相关疑难解决方法(0)

如何在Django ModelForm中过滤ForeignKey选项?

说我的我有以下内容models.py:

class Company(models.Model):
   name = ...

class Rate(models.Model):
   company = models.ForeignKey(Company)
   name = ...

class Client(models.Model):
   name = ...
   company = models.ForeignKey(Company)
   base_rate = models.ForeignKey(Rate)
Run Code Online (Sandbox Code Playgroud)

即有多个Companies,每个都有RatesClients.每个都Client应该有一个Rate从它的父级Company's Rates而不是另一个基础中选择的基础Company's Rates.

在创建用于添加a的表单时Client,我想删除Company选项(因为已经通过Company页面上的"添加客户端"按钮Rate选择了该选项)并且还将选择限制为该选项Company.

我如何在Django 1.0中解决这个问题?

我目前的forms.py文件只是样板文件:

from models import *
from django.forms import ModelForm

class ClientForm(ModelForm):
    class Meta:
        model = Client
Run Code Online (Sandbox Code Playgroud)

views.py也是基本的:

from django.shortcuts …
Run Code Online (Sandbox Code Playgroud)

python django django-forms

218
推荐指数
4
解决办法
13万
查看次数

为什么我得到一个对象不是可迭代的错误?

为什么我的应用程序中出现以下错误

Caught TypeError while rendering: 'ModelNameHere' object is not iterable
Run Code Online (Sandbox Code Playgroud)

但是当我从shell执行它时,我不明白它?

我的表单中只有一个自定义字段,它继承自forms.ModelForm

custom_serving_size = forms.ChoiceField(
    ServingSize.objects.all(),
    widget=forms.Select(attrs={'class':'ddl'})
)
Run Code Online (Sandbox Code Playgroud)

编辑

这是我的表格类

class RecipeIngredientForm(forms.ModelForm):
    serving_size = forms.ChoiceField(choices=ServingSize.objects.all())
Run Code Online (Sandbox Code Playgroud)

ServingSize.objects.all()上发生错误

django

6
推荐指数
1
解决办法
8514
查看次数

标签 统计

django ×2

django-forms ×1

python ×1