Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.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
Python Django:填充模型选择字段_Python_Django - Fatal编程技术网

Python Django:填充模型选择字段

Python Django:填充模型选择字段,python,django,Python,Django,我一直在上下搜索,似乎找不到正确的答案 我一直在玩django和我的测试项目,我不知道如何实现它,我正在尝试根据视图中的外键动态显示下拉内容 以下是我的示例视图: def job_display(request): job_list = Job_Posting.objects.filter(Publication_Status="A", Available_Slots__gt=0).order_by('-Urgency_Status', '-Date_Modified') co

我一直在上下搜索,似乎找不到正确的答案

我一直在玩django和我的测试项目,我不知道如何实现它,我正在尝试根据视图中的外键动态显示下拉内容

以下是我的示例视图:

def job_display(request):

    job_list = Job_Posting.objects.filter(Publication_Status="A", Available_Slots__gt=0).order_by('-Urgency_Status', '-Date_Modified')
    context = {'job_list': job_list}
    return render(request, 'frontend/home.html', context)

def save_page(request, job_id):
    jreq = get_object_or_404(Job_Posting, fkey=job_id)
    form = application_form(request.POST)
    if request.method == 'POST':
        .....
    else:
        .....
    return render(request, 'frontend/apply.html ... )
我的网址:

urlpatterns = patterns('',
    url(r'^$', views.job_display, name='job_display'),
    url(r'^(?P<job_id>[0-9]+)/apply$', views.save_page, name='save_page'),
)
我的模型:

class Course_Selection(models.Model):
    Course = models.CharField(max_length=30, unique=True)
    Abbreviation = models.CharField(max_length=100, unique=True)

class Job(models.Model):
    Job_Position = models.CharField(max_length=30, null=True, unique=True)

class Job_Posting(models.Model):
    fkey = models.OneToOneField(Job, verbose_name="Job Positions")
    ....

class Educational_Requirement(models.Model):
    fkey = models.OneToOneField(Job_Posting, verbose_name="Job Positions")
    Ed_req = models.OneToOneField(Course_Selection, verbose_name = 'Educational Requirement')

    def __unicode__(self):
        return self.Ed_req
我的问题是在modelform中显示选项,在我的视图中,我可以通过
save\u页面
jreq
via
jreq.fkey
获取当前选择的
job\u列表
,然后保存我的表单。如何通过所选的
作业列表
填充表单的
模型选择字段

如果我的帖子不清楚,请随意评论我的帖子缺少什么

编辑 我发现您可以通过如下视图设置
queryset

form.fields['COURSE'].queryset=education\u Requirement.objects.filter(fkey=jreq.fkey\u id)

我的问题是,我正在使用
inlineformset\u工厂
动态生成字段,如果我这样做:

for form in myinlineform:
    form.fields['COURSE'].queryset = Educational_Requirement.objects.filter(fkey=jreq.fkey_id)`

我提出的错误是:
[u'ManagementForm数据丢失或已被篡改]

请确保已将内联表单集的管理表单包含在模板中:

{{ my_formset.management_form }} 

在这里阅读更多信息:

是的,我有
{my_formset.management\u form}
,我的测试应用程序在没有
的情况下运行良好
{{ my_formset.management_form }}