#模板
class IndexForm(forms.Form):
# 模板,用戶提交的name和這里的變量名一定要是一致的.否則不能獲取數據
user = forms.CharField(min_length=6, error_messages={'required': '用戶名不能為空', 'min_length': '用戶名長度不能小於6'})
email = forms.EmailField(error_messages={'required': '郵箱不能為空', 'invalid': '郵箱格式錯誤'})
"""
單選
favor = forms.ChoiceField(
choices=[(1, '小虎'), (2, '小小虎'), (3, '小B虎')]
)
"""
# 多選
favor = forms.MultipleChoiceField(
choices=[(1, '小虎'), (2, '小小虎'), (3, '小B虎')]
)
pass
#函數
def index(request):
obj = IndexForm()
return render(request, "index.html", {'obj': obj})
def edit_index(request):
obj = IndexForm({'user': 'root', 'email': '123@qq.com', 'favor': [2,3]})
return render(request, "index.html", {'obj': obj})
#前端 鄭州婦科醫院哪家好 yiyuan.120ask.com/art/
{{ obj.user }}
{{ obj.email }}
{{ obj.favor }}
補充知識:django使用模板實現下拉菜單,菜單內容讀取后台動態填充,並動態設置默認值
看代碼吧!
{% for name in data_list %} {{ name }} {% endfor %}
這里面的重點是:
{% if name == role_name %} selected {% endif %} 這句話中得判斷條件,name就是自己從data_list中遍歷出來得那個name, role_name也是自己傳過來得數據,這個數據是我自己定義的另一個庫中的數據,因為兩個庫是關聯的;
data = UserManage.objects.get(id=id)
role_name = data.user_role.name
query_name_list_set = RolesManage.objects.values("name")
data_list = []
for name_dict in query_name_list_set:
data_list.append(name_dict.get("name"))
return render(request, "users_manage/edit.html", {"data": data, "data_list": data_list, "role_name": role_name})