Django

Django 具有的特点

  • 功能完善、要素齐全:该有的、可以没有的都有,常用的、不常用的 工具都用。
  • 完善的文档:经过十多年的发展和完善,Django有广泛的实践经验和 完善的在线文档。
  • 强大的数据库访问组件:Django的Model层自带数据库ORM组件。 当然你也可以使用其它访问技术,比如SQLALchemy。
  • 灵活的URL映射:Django使用正则表达式管理URL映射,灵活性高。
  • 丰富的Template模板语言:类似jinjia模板语言,不但 原生功能丰富,还可以自定义模板标签。
  • 自带免费的后台管理系统:只需要通过简单的几行配置和代码就可以 实现一个完整的后台数据管理控制平台。
  • 完整的错误信息提示:在开发调试过程中如果出现运行错误或者异 常,Django可以提供非常完整的错误信息帮助定位问 题。

Django与MVC

Django对传统的MVC设计模式进行了修改,将视图分成View模块和Template模块两部分,将动态的逻辑处理与静态的页面展现分离开。
而Model采用了ORM技术,将关系型数据库表抽象成面向对象的Python类,将表操作转换成类操作,避免了复杂的SQL语句编写。MTV和MVC本质上是一样的。

  • 模型(Model):和MVC中的定义一样
  • 模板(Template):将数据与HTML语言结合起来的引擎
  • 视图(View):负责实际的业务逻辑实现

Django的MTV模型组织可参考右图所示:
在这里插入图片描述
一个小的知识点:

location.reload(); // 页面刷新

创建子应用

1,在Tools 中点击 run manager.py
输入:

startapp + 名字

创建成功
2,进行配置
在settings 大概40行左右的位置,添加

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    '上述添加的子应用的名字'
]

创建超级用户

1,运行manage.py

createsuperuser 

然后输入用户名和密码
2,登录:http://127.0.0.1:8000/admin/输入设置的用户名和密码
3,在settings.py 中 更改语言 ,

LANGUAGE_CODE = 'zh-Hans'

4, 将model层写的数据类加载到页面中,在admin.py中。

from django.contrib import admin
from djangoproject.models import Teacher
class TeacherAdmin(admin.ModelAdmin):
    list_display = ('t_id','pwd','t_name','good_subject','t_introduce','t_honor','t_age','t_background','t_motto','t_img')
admin.site.register(Teacher, TeacherAdmin)

5,在app.py修改应用的名字

from django.apps import AppConfig
class DjangoprojectConfig(AppConfig):
    name = 'djangoproject'
    verbose_name = '图书管理系统'   #应用的名字

6,在model.py中 修改模型的名称
注意:calss Meta 要写到对应模型的里面。

from django.db import models
# Create your models here.
class Publish(models.Model):
    nid = models.AutoField(primary_key=True)
    name = models.CharField('出版社名称	',max_length=20,null=False)  #给字段添加中文名字
    city = models.CharField('城市',max_length=30)
    email = models.CharField('联系方式',max_length=40)

    def __str__(self):
        return self.name  #name与上面的name是对应的。

    class Meta:
        verbose_name = '出版社名称'  #数据表添加中文名字
        verbose_name_plural ='出版社'

连接mysql数据库

1,下载pymysql包
2,在__init__.py 中输入

import pymysql
pymysql.install_as_MySQLdb() #将pymysql 按照 pymysql 的模式来使用。

3、在settings中更改数据库

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'mydb',    //数据库库名
        'USER':'root',      //数据库用户名
        'PASSWORD':'123456',  // 数据库密码
        'HOST':'localhost', 
        'PORT':'3306'
    }
}

4,在model.py 中实例化数据表,例如

class Goodes(models.Model):
    goods_no = models.AutoField(primary_key=True,auto_created=True)
    goods_name = models.CharField(null=False, unique=True, max_length=20)
    goods_price = models.FloatField(null=False)

5,自动创建数据表
在 Terminal 中时输入:

python manage.py makemigrations
python manage,py migrate

静态文件的配置

现在最外层创建文件static文件夹
在setting 中最后面配置:
STATIC_URL = '/static/' STATICFILES_DIRS = [ os.path.join(BASE_DIR, "static"), '/static/', ]
而在H5中引用:

{% load static %}
<img src="{% static 'image/1501010045.JPG' %}" alt="照片">
<link rel="stylesheet" href="{% static 'css/qfbase.css' %}">
如若还是不行

1,首先准备favicon.ico 图片,网上有很多转换的工具,放到static/images中,在H5中引用这张图片。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值