django - Django以表格形式获取关系名称
问题描述
我正在尝试创建一个 crud,您可以在其中添加商店,并选择商店是否处于活动状态,所以我的模型如下所示:
class Store(models.Model):
status = models.ForeignKey(Status, on_delete=models.PROTECT)
name = models.CharField(max_length=100)
address = models.CharField(max_length=100)
created = models.DateTimeField(auto_now_add=True)
updated = models.DateTimeField(auto_now=True)
和我的表格:
class StoreForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(StoreForm, self).__init__(*args, **kwargs)
for visible in self.visible_fields():
visible.field.widget.attrs['class'] = 'form-control'
Status = forms.ModelChoiceField(queryset=Status.objects.all())
class Meta:
model = Store
fields = "__all__"
我想做的是在字段状态中获取该关系的名称,例如活动或非活动,但我正在使用状态对象(1)和状态对象(1)进行选择
解决方案
在Status
模型的定义中。在方法中添加所需的字段__str__
。
像这样:
class Status(models.Model):
[... Your fields...]
def __str__(self):
return self.<your_field>
通过替换<your_field>
为您希望在下拉列表中显示的字段的名称。
推荐阅读
- amazon-elb - SASL_SSL 集群上 Kafka 休息代理的弹性负载均衡器
- javascript - 为列表中的 DOM 节点添加值
- python - 所有可能的 openpyxl 填充类型的列表?
- go - Golang 找不到提供包 {PACKAGE_NAME} 的模块:工作目录不是模块的一部分
- c++ - 在 C++ 中使用树时的内存问题
- java - 根据布尔标志交换 if/else 条件/代码块
- arm - 使用 HC-SR04 在 LCD 上显示距离
- visual-studio-code - 为什么我不能在 VS 代码中接受用户输入?
- ios - 如何在 Switft 中使用 firstIndex 查找所有结果
- ruby-on-rails - 当 javascript 文件夹外的文件更改时触发 webpacker 编译