成员管理系统web开发

1、建立项目

​ django-admin startproject member_manage

2、创建应用app

​ django-admin startapp member

3、建立模板 models

from django.db import models


class cy(models.Model):
    xm = models.CharField(max_length=30)
    xh = models.CharField(max_length=40)
    xb = models.CharField(max_length=10)
    age = models.CharField(max_length=30)

​ 同步数据库

python manage.py makemigrations

python manage.py migrate

4、建立路由 urls

from django.conf.urls import url
from django.contrib import admin
from member import views


urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^$', views.dis, name='home'),
    url(r'^add/', views.add, name='add'),
    url(r'^list/(?P<member_id>[0-9]*)/$', views.detail, name='detail'),
]

5、后台管理 admin

扫描二维码关注公众号,回复: 10818104 查看本文章

from django.contrib import admin
from . import models


@admin.register(models.cy)
class cyAdmin(admin.ModelAdmin):
    list_display = ('xm', 'xh', 'xb', 'age')

6、创建具体功能 view

​ (1)、成员列表显示

def dis(request):
    context = {}
    context['members'] = cy.objects.all()
    return render_to_response('dis.html', context)

​ (2)、个人信息展示

def detail(request, member_id):
    context = {}
    context['member'] = get_object_or_404(cy, id=member_id)
    return render_to_response('detail.html', context)

​ (3)、添加信息

def add(req):
    if req.method == 'GET':
        return render(req, 'add.html')
    if req.method == "POST":
        if cy.objects.filter(xm=req.POST.get('xm')).exists():
            return render(req, 'no.html')
        else:
            cy.objects.create(
              xm=req.POST.get("xm", None),
              xh=req.POST.get("xh", None),
              xb=req.POST.get("xb", None),
              age=req.POST.get("age", None)
              )
        return render(req, 'ok.html')

7、填写前端页面 html

​ dis.html

</table>
{% block content %}
    <div>
        <a href="{% url 'add' %}">
            <h3>添加成员</h3>
        </a>
    </div>
    <div>
        {% for member in members  %}
            <a href="{% url 'detail' member.pk%}">
                <p>{{ member.xm }}</p>
            </a>
        {% endfor %}
    </div>
{% endblock %}
</body>
</html>

detail.html

{% block content %}
{#    {% for %}#}
{#    {{ field }}#}

    <ul>
        <li>学号:<a>{{ member.xh }} </a></li>
        <li>姓名:<a>{{member.xm}}</a></li>
        <li>年龄:<a>{{member.age}}</a></li>
        <li>性别:<a>{{member.xb}}</a></li>
    </ul>
    <div>
        <a href="{% url 'home' %}">
            <h4>返回成员信息列表</h4>
        </a>
    </div>
{% endblock %}

add.html

</head>
<body>
<h1>添加成员信息</h1>

<form action="/add/" method="post">

    <p>姓名<input type="text" name="xm"></p>
    <p>学号<input type="text" name="xh"></p>
    <p>性别<input type="text" name="xb"></p>
    <p>年龄<input type="text" name="age"></p>
    <p><input type="submit" value="提交"></p>
{% block content %}
    <div>
        <a href="{% url 'home' %}">
            <h4>取消添加</h4>
        </a>
    </div>
{% endblock %}
</form>
</body>

</html>

ok.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>test</title>
</head>
<body>
    <h1 style="background-color: white;color: green">提交成功!</h1>
{% block content %}
    <div>
        <a href="{% url 'add' %}">
            <h3>继续添加</h3>
        </a>
    </div>
    <div>
        <a href="{% url 'home' %}">
            <h3>返回成员信息表</h3>
        </a>
    </div>
{% endblock %}
</body>
</html>

no.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>test</title>
</head>
<body>
    <h1 style="background-color: white;color: darkred">该成员已存在!</h1>
{% block content %}
    <div>
        <a href="{% url 'add' %}">
            <h3>继续添加</h3>
        </a>
    </div>
    <div>
        <a href="{% url 'home' %}">
            <h3>返回成员信息表</h3>
        </a>
    </div>
{% endblock %}
</body>
</html>
发布了33 篇原创文章 · 获赞 27 · 访问量 74

猜你喜欢

转载自blog.csdn.net/weixin_46165788/article/details/105532593