2 回答

TA貢獻1155條經驗 獲得超0個贊
request.POST.get您可以通過使用所有提交的數據所在位置來獲取選擇框值。
views.py
def myview(request):
? ? if request.method == "POST":
? ? ? ? selected_option = request.POST.get('select')
? ? ? ? Znat.objects.create(name_znat=selected_option)
? ? return redirect("/")
{% csrf_token %}
每當您使用表單時也應該有。除非您的視圖已明確標記為csrf_exempt
.?
<form method = "POST" action = "{% url 'create_group_handler'%}">
{% csrf_token %}
<select name = "select"> <! - Add an identifier here instead of using 'name' ->
<option value = "value1"> Value 1 </ option>
<option value = "value2" selected> Value 2 </ option>
<option value = "value3"> Value 3 </ option>
</ select>
</ form>

TA貢獻1854條經驗 獲得超8個贊
使用 ModelForm,最大限度地利用 Django 的內置功能。祝你好運!
models.py:
class Znat (models.Model):
? ? CHOICES = (
? ? ? ? ('value1', 'Value 1'),
? ? ? ? ('value2', 'Value 2'),
? ? ? ? ('value3', 'Value 3'),
? ? )
? ? name_znat = models.CharField ('Name znat', max_length = 200, choices=CHOICES)
forms.py:
class CreateZnatForm(ModelForm):
? ? class Meta:
? ? ? ? model = Znat
? ? ? ? fields = ('name_znat')
? ? ? ? widgets = {
? ? ? ? ? ? 'name_znat': forms.Select(attrs={'class': 'form-control'}),
? ? ? ? }
views.py:
class ZnatCreate(CreateView):
? ? model = Znat
? ? fields = ['name_znat']
urls.py:
urlpatterns = [
? ? path('znat/', ZnatCreate.as_view(), name='create_group_handler'),
]
- 2 回答
- 0 關注
- 148 瀏覽
添加回答
舉報