zoukankan      html  css  js  c++  java
  • 1.1 、Django 后台

    Django 后台
    与后台相关文件:每个app中的 admin.py 文件与后台相关。

    一,新建一个 名称为 HelloDjango 的项目
    1. django-admin.py startproject HelloDjango


    二,新建一个 叫做 blog 的app
    # 进入 HelloDjango 文件夹
    1. cd HelloDjango

     
    # 创建 blog 这个 app
    1. python manage.py startapp blog



    三,修改 blog 文件夹中的 models.py

    1. # coding:utf-8
    2. from django.db import models
    3. class Article(models.Model):
    4.     title = models.CharField(u'标题', max_length=256)
    5.     content = models.TextField(u'内容')
    6.  
    7.     pub_date = models.DateTimeField(u'发表时间', auto_now_add=True, editable = True)
    8.     update_time = models.DateTimeField(u'更新时间',auto_now=True, null=True)

    四,把 blog 加入到settings.py中的INSTALLED_APPS中
    1. INSTALLED_APPS = (
    2. 'django.contrib.admin',
    3. 'django.contrib.auth',
    4. 'django.contrib.contenttypes',
    5. 'django.contrib.sessions',
    6. 'django.contrib.messages',
    7. 'django.contrib.staticfiles',
    8.  
    9. 'blog',
    10. )

    提示:INSTALLED_APPS 是一个元组,每次加入新的app的时候,在后面都加一个逗号,这是一个好习惯。

    五,同步所有的数据表
    注意:Django 1.7及以上的版本需要用以下命令
    1. python manage.py makemigrations
    2. python manage.py migrate

    =====>
    如果是 Django 不主动提示创建管理员(Django 1.9不提示)用下面的命令创建一个帐号
    1、首先我们要新建一个用户名,用来登陆管理网站,可以使用如下命令:
     python manage.py createsuperuser

    2、输入想要使用的用户名:
    Username (leave blank to use 'administrator'): user01
    3、输入email:
    Email address: (在这里输入你的自己的邮箱帐号)
    4、输入密码,需要输入两次,并且输入密码时不会显示出来:
    Password:
    Password (again):
    当两次密码都相同的时候,就会提示超级帐号创建成功。
    Superuser created successfully.
    5、运行服务:
    python manage.py runserver

    6、浏览器地址栏输入:http://127.0.0.1:8000/admin


    六,修改 admin.py 
    进入 blog 文件夹,修改 admin.py 文件(如果没有新建一个),内容如下
    1. from django.contrib import admin
    2. from .models import Article
    3. admin.site.register(Article)
    只需要这三行代码,我们就可以拥有一个强大的后台!
    提示:urls.py中关于 admin的已经默认开启

    七,打开 开发服务器
    python manage.py runserver
    # 如果提示 8000 端口已经被占用,可以用 python manage.py runserver 8001 以此类推。

    访问 http://localhost:8000/admin/ 输入设定的帐号和密码, 就可以看到:

    点击 Articles,动手输入 添加几篇文章,就可以看到:

    我们会发现所有的文章都是叫 Article object,这样肯定不好,比如我们要修改,如何知道要修改哪个呢?

    我们修改一下 blog 中的models.py

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    # coding:utf-8
    from django.db import models
     
     
    class Article(models.Model):
        title = models.CharField(u'标题', max_length=256)
        content = models.TextField(u'内容')
     
        pub_date = models.DateTimeField(u'发表时间', auto_now_add=True, editable = True)
        update_time = models.DateTimeField(u'更新时间',auto_now=True, null=True)
     
        def __unicode__(self):# 在Python3中用 __str__ 代替 __unicode__  #新添加;
            return self.title

    我们加了一个 __unicode__ 函数,刷新后台网页,会看到:

    所以推荐定义 Model 的时候 写一个 __unicode__ 函数(或 __str__函数)





    GitHub:https://github.com/ju-do-it
    个人博客:https://zhangju.lookdoc.cn
    博客园:https://www.cnblogs.com/zhangju
    Copyright ©2020 Ju-do-it
    【转载文章务必保留出处和署名,谢谢!】
  • 相关阅读:
    常用集体名词的用法
    囊中羞涩的表达
    《当幸福来敲门》观后感
    <肖申克的救赎>观后感
    心语4
    补充:回答网友的问题,如何不用路径,而直接将CImage画到DC中,之后DC一起显示.
    线程中对变量的用法
    添加按键变量数组,就是很多同种类型按键关联变量,这些变量是一个数组;
    不容按钮、下拉框 执行同一个函数或者同一种函数的用法
    CImage显示位图与CDC双缓冲冲突,使用路径层解决.
  • 原文地址:https://www.cnblogs.com/zhangju/p/5858697.html
Copyright © 2011-2022 走看看