我正在阅读吉姆·贾戈( Jim )的“开始姜戈”( memory ECommerce),我正在尝试添加一个功能,让购买智能手机的消费者可以选择是否带着它的存储卡。我就是这样做的:
此时,我得到一个完整性错误,即memory_card_id为空,而不能为空。
我的问题是,我是继续我的启动(如果是这样的话,对错误的任何建议将是好的),还是有更简单和容易的方法去做呢?
发布于 2014-08-14 11:58:25
不,不是这样的。不能将模型对象用作select小部件中的ID属性。您绝对不应该在表单声明中执行get。
相反,您应该使用一个ModelChoiceField,查询集指向MemoryCard模型:
memory_card = forms.ModelChoiceField(queryset=MemoryCard.objects.all())如果您有更多不想在这里显示的存储卡选项,则可以缩小其范围:
memory_card = forms.ModelChoiceField(queryset=MemoryCard.objects.filter(name__in=['eight', 'sixteen', 'thirtytwo'])https://stackoverflow.com/questions/25307315
复制相似问题