Django2 改造加基础知识

改造

setting.py 中修改以下代码可汉化

LANGUAGE_CODE = 'zh-hans'

# TIME_ZONE = 'UTC'
TIME_ZONE = 'Asia/Shanghai'

USE_I18N = True

USE_L10N = True

# USE_TZ = True
USE_TZ = False

执行

  1. 创建app
    python manage.py startapp XXX(app名字)

  2. 创建超级用户
    python manage.py createsuperuser

  3. 执行
    python manage.py runserver

admin部分

admin.py 文件中

from django.contrib import admin

from .models import *

# Register your models here.
# 注册表方法
class BookinfoAdmin(admin.ModelAdmin):
    list_display = ['id','btitle','bpub_date']

class HeroinfoAdmin(admin.ModelAdmin):
    list_display = ['id','hname','hgender','hbook']


admin.site.register(BookInfo,BookinfoAdmin)
admin.site.register(HeroInfo,HeroinfoAdmin)

在 model.py 中

class BookInfo(models.Model):
    btitle = models.CharField(max_length=20)
    bpub_date = models.DateField()

    # 改变返回页面显示(把object变为属性)
    def __str__(self):
        return self.btitle

路由

总路由部分
# 匹配完成后会去除此部分

from django.contrib import admin
from django.urls import path

from django.conf.urls import include,url

# 匹配完成后会去除此部分
urlpatterns = [
    path('admin/', admin.site.urls),
    path('',include('appsee.urls')),

]

子路由部分
在app下添加新 url.py 文件,便于管理
# $严格结束符号

from appsee import views
from django.conf.urls import url

# $严格结束符号
urlpatterns = [
    url(r'^index$',views.index),
    url(r'books$',views.display_info),
    # 传递信息成组,http://127.0.0.1:8000/books/2,取2
    url(r'books/(\d+)$',views.detail)
]

模板

可在app下建立自己的模板,为不同表建立文件夹进行规范化
在这里插入图片描述

视图

view.py

from django.shortcuts import render
from django.http import HttpResponse
from appsee.models import BookInfo
from django.template import loader,RequestContext
# Create your views here.

def My_render(request,template_path,context_dic={}):
    # 使用模板文件
    #     加载模板文件        去templates下面获取html文件内容,得到一个模板对象
    temp = loader.get_template(template_path)
    #     定义模板上下文       向模板文件传递数据
    # context = RequestContext(request,context_dic)
    # RequestContext返回的不是一个字典
    context =  context_dic
    #     模板渲染              得到一个标准的html内容
    re_html = temp.render(context)
    return HttpResponse(re_html)

def index(request):
    # return HttpResponse("ok,wahuahua")
    return My_render(request,'booktest/index.html',{'content':"hello world",
                                                   'list':list(range(1,10))})

# 或者直接
    return render(request,'booktest/index.html',{'content':"hello world",
                                                     'list':list(range(1,10))})

MVT(MVC)实例

view.py文件中

def display_info(request):
    books = BookInfo.objects.all()
    return render(request,'booktest/display_info.html',{'books':books})
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>展示列表信息</title>
</head>
<body>
显示图书信息:
<ul>
    {% for book in books %}
    <li><a href="/books/{{ book.id }}">{{ book.btitle }}</a></li>
    {% endfor %}
</ul>

</body>
</html>

a href="/books/{{ book.id }}" 获取id用于跳转到相应页面

# 传递信息成组,http://127.0.0.1:8000/books/2,取2
    url(r'books/(\d+)$',views.detail)

view.py文件中

book.heroinfo_set.all()由BookInfo查HreoInfo

def detail(request,bid):
    book = BookInfo.objects.get(id = bid)
    # book.heroinfo_set.all()由BookInfo查HreoInfo     
    heros = book.heroinfo_set.all()
    return render(request,'booktest/detial.html',{'book':book,'heros':heros})
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>显示英雄信息</title>
</head>
<body>
<h1>{{ book.btitle }}</h1>
英雄信息如下:
<ul>
    {% for hero in heros %}
    <li>{{ hero.hname }}---{{ hero.hgender }}</li>
    {% endfor %}
</ul>
</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
本系统的研发具有重大的意义,在安全性方面,用户使用浏览器访问网站时,采用注册和密码等相关的保护措施,提高系统的可靠性,维护用户的个人信息和财产的安全。在方便性方面,促进了校园失物招领网站的信息化建设,极大的方便了相关的工作人员对校园失物招领网站信息进行管理。 本系统主要通过使用Java语言编码设计系统功能,MySQL数据库管理数据,AJAX技术设计简洁的、友好的网址页面,然后在IDEA开发平台中,编写相关的Java代码文件,接着通过连接语言完成与数据库的搭建工作,再通过平台提供的Tomcat插件完成信息的交互,最后在浏览器中打开系统网址便可使用本系统。本系统的使用角色可以被分为用户和管理员,用户具有注册、查看信息、留言信息等功能,管理员具有修改用户信息,发布寻物启事等功能。 管理员可以选择任一浏览器打开网址,输入信息无误后,以管理员的身份行使相关的管理权限。管理员可以通过选择失物招领管理,管理相关的失物招领信息记录,比如进行查看失物招领信息标题,修改失物招领信息来源等操作。管理员可以通过选择公告管理,管理相关的公告信息记录,比如进行查看公告详情,删除错误的公告信息,发布公告等操作。管理员可以通过选择公告类型管理,管理相关的公告类型信息,比如查看所有公告类型,删除无用公告类型,修改公告类型,添公告类型等操作。寻物启事管理页面,此页面提供给管理员的功能有:新增寻物启事,修改寻物启事,删除寻物启事。物品类型管理页面,此页面提供给管理员的功能有:新增物品类型,修改物品类型,删除物品类型。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值