在Django中,我制作了一个表格,获取电子邮件地址并将其保存在数据库中,这是我的表格.py:
class NewsletterUserSignUpForm(forms.ModelForm):
class Meta:
model = NewsletterUsers
fields = ['email']
def clean_email(self):
email = self.cleaned_data.get('email')
return email
这是我的观点
def newsletter_signup(request):
form = NewsletterUserSignUpForm(request.POST or None)
if form.is_valid():
instance = form.save(commit=False)
if NewsletterUsers.objects.filter(email=instance.email).exists():
messages.warning(request, 'Your Email Already Exist In Our DataBase.',
'alert alert-warning alert-dismissible')
else:
instance.save()
messages.success(request, 'Your Has Been Submitted To Our DataBase.',
'alert alert-success alert-dismissible')
context = {
'form': form,
}
return render(request, 'newsletter/subscribe.html', context)
这里的问题是,这个表单有自己的输入,输入必须放在里面,但我想设计自己的模板,在模板中获得输入,然后将其传递给这个表单,我的问题是如何将.html模板文件中的输入传递给我的表单?
这是我的html文件,不知道在href中输入什么标签:
<form method="post" class="login100-form validate-form">
{% csrf_token %}
<span class="login100-form-title p-b-43">
Subscribe
</span>
<div>
<inputtype="email" name="Email">
<span class="label">Email</span>
</div>
<button type="submit" href="">
Subscribe
</button>
</div>
我应该在href中输入什么,以及如何从这里将输入传递到表单?此外,我很抱歉在我的问题中写错了字
据我所知,您希望创建自己的自定义输入框,当该框被填充时,您希望表单输入框也被填充。
使用display:none隐藏表单输入框。创建自己的自定义输入框,在填充自定义输入框时使用javascript填充表单输入框。例如:
<script>
form_input_box = document.getElementById('id_of_form_input_box')
custom_input_box = documen.getElementById('id_of_custom_input_box')
$("id_of_custom_input_box").change(function(){
form_input_box.value = custom_input_box.value
});
</script>
这是我的html代码的问题,我应该向我的输入标记添加一个id和name属性,并使用这个id和name从html获取输入并将其传递到我的表单,对于href属性,我编写重定向到表单的url。固定的html代码:
<form method="post" class="login100-form validate-form">
{% csrf_token %}
<span class="login100-form-title p-b-43">
Subscribe
</span>
<div class="wrap-input100 container-login100-form-btn rs1 rs2 validate-input padding-50"
data-validate="Username is required">
<input id="email" maxlength="100" class="input100" type="email" name="email">
<span class="label-input100">Email</span>
</div>
<div class="container-login100-form-btn">
<button type="submit" href="{% url 'newsletter_subscribe' %}" class="login100-form-btn">
Subscribe
</button>
</div>
<div class="text-center w-full p-t-23">
<a style="font-size: 15px" href="{% url 'newsletter_unsubscribe' %}" class="txt1">
Click Here To Unsubscribe.
</a>
</div>
</form>