P47内容概要
管理员账户(增删改查)
P48管理员列表
def admin_list(request):
# 搜索
data_dict = {}
search_data = request.GET.get('q', '')
if search_data:
data_dict['username__contains'] = search_data
queryset = models.Admin.objects.filter(**data_dict)
from app03_phone_number_management.utils.pagination import Pagination
page_object = Pagination(request, queryset)
context = {
"queryset": page_object.page_queryset,
"page_string": page_object.html(),
"search_data": search_data,
}
return render(request, 'admin_list.html', context )
{% extends 'layout.html' %}
{% block content %}
{% endblock %}
P19管理员添加
class BootStrapModelForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
for name, field in self.fields.items():
if field.widget.attrs:
field.widget.attrs['class'] = "form-control"
field.widget.attrs['placeholder'] = field.label
else:
field.widget.attrs = {
'class': 'form-control',
'placeholder': field.label
}
class AdminModelForm(BootStrapModelForm):
confirm_password = forms.CharField(
label="确认密码",
widget=forms.PasswordInput,
)
class Meta:
model = models.Admin
fields = ["username", "password", "confirm_password"]
widgets = {
'password': forms.PasswordInput,
}
def admin_add(request):
context = {
'title': "添加管理员",
'form': AdminModelForm(),
}
return render(request, 'change.html', context)
{% extends 'layout.html' %}
{% block content %}
{{ title }}
{# novalidate关闭浏览器校验#}
{% endblock %}



