gpt4 book ai didi

python - 具有固定选项的多项选择。看不到选项(Django)

转载 作者:太空宇宙 更新时间:2023-11-03 19:01:49 24 4
gpt4 key购买 nike

我对 Django 很陌生,我正在尝试这样做,以便我可以为一个字段选择多个选择,但我似乎遇到了问题

这是我的网站模型的简化版本

class Zone(models.Model): 
zone = (
('NE','Northeast'),
('SE','Southeast'),
('SW','Southwest'),
('MW','Midwest'),
('CN','Canada'),
)

class Site(models.Model):

region = models.ManyToManyField(Zone)
state = models.CharField(max_length = 30)
...


class SiteForm(ModelForm):
class Meta:
model = Site

现在,区域数量比我在这里显示的要多,这可能意味着一个网站可能同时拥有多个区域。

简单查看功能:

def add_site(request): 
if request.method == 'POST':
form = SiteForm(request.POST)
if form.is_valid():
profile = form.save(commit=False)
profile.user = request.user
profile.save()
else:
form = SiteForm()

return render(request, 'index.html', {'form': form,})

据我了解,一旦表单出现在网页上,我应该会看到一个框,其中包含我在 Zone 类中指定的选项,但该框完全是空的。如何用西北、东南、西南等选项填充它?

最佳答案

这并不是它的工作原理。查看this definition在 django 文档中。这个例子很清楚,但对你来说也试图做一些非常奇怪的事情。

我怀疑您正在尝试为您的选择创建一个单独的模型 - 为此,您将使用 modelchoicefieldmodelmultiplechoicefield - 为此,您只需将您的区域模型定义为实际模型;你所拥有的根本不是 Django 模型。

此外,“Site”是 django 提供的模型 - 你应该没问题,但如果你也使用 django 提供的身份验证,你可能会遇到一些难以诊断的问题。

关于python - 具有固定选项的多项选择。看不到选项(Django),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15840661/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com