访问Django temp中的各个表单字段

2024-05-15 03:52:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我想访问表单的单个元素。。。 代码如下:

模型.py

class GatewayDetails(models.Model):
    gateway_id = models.IntegerField(primary_key=True)
    gateway_name = models.CharField(max_length=256L)
    class Meta:
        db_table = 'gateway_details'

class GatewayParameters(models.Model):
   gateway = models.ForeignKey(GatewayDetails)
   id=models.IntegerField(primary_key=True)
   gateway_param1 = models.CharField(max_length=256L)
   gateway_param2 = models.CharField(max_length=256L)
   gateway_param3 = models.CharField(max_length=256L)
   gateway_param4 = models.CharField(max_length=256L)
   gateway_param5 = models.CharField(max_length=256L)
   gateway_param6 = models.CharField(max_length=256L)
   gateway_param7 = models.CharField(max_length=256L)
   gateway_param8 = models.CharField(max_length=256L)
   gateway_param9 = models.CharField(max_length=256L)
   class Meta:
      db_table = 'gateway_parameters'

视图.py

  if request.method=="POST":
        add_gateway_details_form=Add_Gateway_Details(request.POST)
        if add_gateway_form.is_valid():
        success=True          
        else:
        add_gateway_details_form=Add_Gateway_Details()
else:
    add_gateway_details_form=Add_Gateway_Details()
    add_gateway_parameters_form=Add_Gateway_Parameters()

表单.py

class Add_Gateway_Details(forms.ModelForm):
class Meta:
     model=GatewayDetails
    exclude=('gateway_id',)
class Add_Gateway_Parameters(forms.ModelForm):
class Meta:
    model=GatewayParameters
    exclude=('gateway',)

html格式:

 <form action="." method="POST">
            {{ add_gateway_details_form.as_p}}
            {{ add_gateway_parameters_form.as_p }}

            <input type="submit" value="send">
 </form>

我想访问表单的各个元素(例如:gateway_name,gateway_param1),而不是像add_gateway_details_form.as_p或add_gateway_parameters_form.as_p那样访问整个表单

任何帮助。。


Tags: formadd表单modelsdetailslengthmaxgateway
2条回答

实际上,在表单之外,您可能需要:

{{some_form.some_field.value}}

你可以:

{% for form_field in add_gateway_details_form %}
    {{ form_field }}
{% endfor %}

您还可以访问如下字段:

{{ add_gateway_details_form.gateway_name }}

有关表单和模板的the documentation中对此进行了详细说明。

相关问题 更多 >

    热门问题