应用场景:
标签选择,参与人,各种选择可以从数据库中查出所有,反馈到前端的标签中。还可以在模板文件中添加selected标签做预选择
model.py中
from django.db import models
class MessageTag(models.Model):
class Meta:
db_table = "message_tag"
# 标签名称
tag_name = models.CharField(
max_length=20,
null=False,
unique=True
)
@classmethod
def msg_tags(cls):
return cls.objects.all()
view.py中
msg_tags = MessageTag.msg_tags()
模板HTML中
{% for tag in msg_tags %}
<option value="{{ tag.tag_name }}">{{ tag.tag_name }}</option>
{% endfor %}
说明:
你用all() 返回的是一个对象列表。这样的 [obj1, obj2, …]
使用 obj.objects.get(id=) 这样得到的是一个对象, 或者使用 get_object_or_404(obj, id=)
这样的话, 使用 obj.objects.get(id=**).属性名 既可以了
或者
for obj in obj.objects.all():
obj.属性名