Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django使用Django中的手动渲染窗体选择值_Django_Django Forms_Django Templates - Fatal编程技术网

Django使用Django中的手动渲染窗体选择值

Django使用Django中的手动渲染窗体选择值,django,django-forms,django-templates,Django,Django Forms,Django Templates,我试图在django中实现CRUD操作,但是,我被困在编辑操作中。 在将数据传递到编辑模板后,我需要显示操作系统下拉列表中的选定值,如何实现这一点? 我使用django表单的手动呈现,模板中包含以下代码: <div class="form-group row"> <label class="col-sm-3 col-form-label">Operating System</lab

我试图在django中实现CRUD操作,但是,我被困在编辑操作中。 在将数据传递到编辑模板后,我需要显示操作系统下拉列表中的选定值,如何实现这一点? 我使用django表单的手动呈现,模板中包含以下代码:

   <div class="form-group row">
                    <label class="col-sm-3 col-form-label">Operating System</label>
                    <div class="col-sm-9">
                    <select class="form-control" name="os_id" id="os_id" required>
                          <option value="">--Select--</option>

                        {% for os in os %}
                            <option value="{{ os.id}}">{{ os.key_name}}</option>                       
                        {% endfor %}
                          </select>
                    </div>
                </div>

   <div class="form-group row">
                    <label class="col-sm-3 col-form-label">Title</label>
                    <div class="col-sm-9">
                    <textarea class="form-control" id="title" name="title" rows="3" required>{{ servicedesk.title }}</textarea>
                  </div>
                  </div>
模型:


class OperatingSystem(models.Model):
    key_name = models.CharField(max_length=100,null=True) 
    key_description = models.CharField(max_length=255,null=True) 
 
    class Meta:  
        db_table = "operating_systems" 

    def __str__(self):
        return self.key_name

class Software(models.Model):
    key_name = models.CharField(max_length=100,null=True) 
    key_description = models.CharField(max_length=255,null=True) 
 
    class Meta:  
        db_table = "softwares" 

    def __str__(self):
        return self.key_name        

class Servicedesk(models.Model):  
    os_id=models.ForeignKey(OperatingSystem, on_delete=models.SET(0))
    software_id = models.ForeignKey(Software, on_delete=models.SET(0))
    title = models.CharField(max_length=255,null=True) 

我试过这个,但不起作用:

    <div class="form-group row">
                    <label class="col-sm-3 col-form-label">Operating System {{os_id}}</label>
                    <div class="col-sm-9">
                    <select class="form-control" name="os_id" id="os_id" required>
                          <option value="">--Select--</option>

                        {% for os in os %}
                            {% if os.id == servicedesk.os_id %}                        
                            <option value="{{os.id}}" selected>{{os.key_name}}</option>
                            {% endif %}
                            <option value="{{ os.id}}">{{ os.key_name}}</option>                       
                        {% endfor %}
                          </select>
                    </div>
                </div>

操作系统{os_id}
--挑选--
{操作系统%中的操作系统为%s}
{%if os.id==servicedesk.os_id%}
{{os.key_name}
{%endif%}
{{os.key_name}
{%endfor%}

我建议您使用
UpdateView
,这是django提供的基于类的视图。它为你做了很多工作。我会检查一下的。非常感谢。我建议您使用django提供的基于类的视图
UpdateView
。它为你做了很多工作。我会检查一下的。非常感谢你。
    <div class="form-group row">
                    <label class="col-sm-3 col-form-label">Operating System {{os_id}}</label>
                    <div class="col-sm-9">
                    <select class="form-control" name="os_id" id="os_id" required>
                          <option value="">--Select--</option>

                        {% for os in os %}
                            {% if os.id == servicedesk.os_id %}                        
                            <option value="{{os.id}}" selected>{{os.key_name}}</option>
                            {% endif %}
                            <option value="{{ os.id}}">{{ os.key_name}}</option>                       
                        {% endfor %}
                          </select>
                    </div>
                </div>