1、完成用户信息注册操作
2、将用户信息入库
3、将上传文件存放至项目下media文件夹下
4、显示所有用户信息
创建模型类
class Person(models.Model):
‘’‘人员表’’’
gender = (
('male','男'),
('female','女'),
)
姓名 = models.CharField(max_length=128,unique=True)
性别 = models.CharField(max_length=32,choices=gender,default='男')
职位 = models.CharField(max_length=256)
照片 = models.ImageField(blank=True,upload_to='photo')
邮箱 = models.EmailField(unique=True)
个人简介 = models.CharField(max_length=256,blank=True)
c_time = models.DateTimeField(auto_now_add=True)
settings.py文件中文件上传相关设置
INSTALLED_APPS = [
‘django.contrib.admin’,
‘django.contrib.auth’,
‘django.contrib.contenttypes’,
‘django.contrib.sessions’,
‘django.contrib.messages’,
‘django.contrib.staticfiles’,
‘fxperson’,
]
DATABASES = {
‘default’: {
#‘ENGINE’: ‘django.db.backends.sqlite3’,
‘ENGINE’: ‘django.db.backends.mysql’,
#‘NAME’: os.path.join(BASE_DIR, ‘db.sqlite3’),
‘NAME’: ‘django’,
‘USER’:‘root’,
‘PASSWORD’:‘fuxin#2345’,
‘HOST’:‘127.0.0.1’,
‘PORT’:‘3306’,
}
}
MEDIA_URL = ‘/media/’
MEDIA_ROOT = os.path.join(BASE_DIR,‘media’)
映射数据库表
#在终端中敲命令
python manage.py makemigrations test
python manage.py migrate
配置URL
from django.contrib import admin
from fxperson import personviews
from django.urls import path,re_path,include
from fuxin.settings import MEDIA_ROOT
from django.views.static import serve
urlpatterns = [
re_path(r’^media/(?P
url(r’^admin/’, admin.site.urls),
url(r’^person/’, personviews.person),
]
创建视图
from django.shortcuts import render,redirect
from .models import Person
def person(request):
if not request.session.get(‘is_login’, None):
return redirect("/index/")
if request.session.get(‘is_login’, None):
list_show = []
obj = Person.objects.all().values()
for i in obj:
del i[‘id’]
del i[‘c_time’]
for i in obj:
print(i)
if i[‘职位’] == ‘软件开发工程师’:
list_show.append(i)
return render(request,‘fxperson/person.html’,{‘o’:list_show})
创建模板
{% extends 'login/base.html' %}
{% block title %}人员信息{% endblock %}
{% block content %}
{% if request.session.is_login %}
<h6>你好,{{ request.session.user_name }}!欢迎回来!</h6>
<div style="max-width:1000px;margin:0 auto;">
<h4 style="margin-bottom:0;">人员信息</h4><br>
<div id="menu" style="float:left;">
<a href="/person/"><span style="color:#000000">管理团队</span></a><br><br>
<a href="/person/"><span style="color:#000000">开发团队</span></a><br><br>
<a href="/person/"><span style="color:#000000">测试团队</span></a><br><br>
<a href="/person/"><span style="color:#000000">后勤团队</span></a><br><br>
</div>
<div id="content" style="float:left;font-size:14px;text-indent:28px;">
<a href="/person/"></a>
{% for row in o %}
{% for key,value in row.items %}
{% if key != '照片' %}
<p>{{ key }}:{{ value }}</p>
{% elif key == '照片' and value == '' %}
<p>{{ key }}:{{ value }}</p>
{% elif key == '照片' and value != '' %}
<p>{{ key }}:</p>
<p style="margin-bottom:20px;"><img src="/media/{{value}}" width=100 height=100></p>
{% endif %}
{% endfor %}
<br>
{% endfor %}
</div>
</div>
{% else %}
<h6>你尚未登录,只能访问公开内容!</h6>
{% endif %}
{% endblock %}