zoukankan      html  css  js  c++  java
  • 【Django入门】学习笔记02

    Admin##

    介绍###

    • Admin是Django自带的一个功能强大的自动化数据管理界面
    • 被授权的用户可以直接在Admin中管理数据库
    • Django提供了许多针对Admin的定制功能

    配置###

    • 创建超级用户
    python manage.py createsuperuser
    
    • 访问Admin
      地址为localhost:8000/admin/
    • 界面汉化
      修改settings.py中LANGUAGE_CODE = 'zh-hans'
    • 配置应用
    1. 在应用下admin.py中引入自身的models模块(模块类)
    2. 编辑admin.py,加入
    admin.site.register(models.YourClassName)
    
    • 修改数据默认显示名称
    1. 在Article类下添加一个方法
    2. 根据Python版本选择_str_(self)(python3)或者_unicode_(self)(python2)
    3. return self.title

    例子:博客开发##

    页面概况###

    • 博客主页面
    • 博客文章内容页面
    • 博客撰写页面

    主页面内容###

    • 文章标题列表(超链接)
    • 发表博客按钮(超链接)

    列表编写思路####

    • 取出数据库所有文章对象
    • 将文章对象打包成列表,传递到前端
    • 前端页面把文章以标题超链接的形式列出

    模板For循环####

    • {% for xx in xx s%}
    • HTML语句
    • {% endfor %}

    博客文章页面###

    • 标题
    • 文章内容
    • 修改文章按钮(超链接)

    URL传递参数####

    • 参数写在响应函数中的request后,可以有默认值
    • URL正则表达式
    'article.(?P<article_id>[0-9]+)/'
    
    • URL正则中的组名必须和参数名一致

    超链接目标地址####

    • href后面是目标地址
    • template中可以用"{%url 'app_name:url_name' param%}"
    • 其中app_name和url_name都在url中配置

    再配URL####

    • url函数的名称参数

    根urls,写在include()的第二个参数位置,namespace = 'blog'
    应用下则写在url()的第三个参数位置,name = 'article'
    主要取决于是否使用include引用了另一个url配置文件

    博客撰写页面###

    • 标题编辑栏
    • 文章内容编辑区域
    • 提交按钮

    编辑响应函数####

    • 使用request.POST.get['参数名']获取表单数据
    • 使用models.Article.objects.create(title,content)创建对象

    修改文章###

    两个编辑页面的区别####

    • 新文章为空,修改文章有内容
    • 修改文章页面有文章对象
    • 文章ID不同

    修改数据####

    • article.title = title
    • article.save()

    其他补充##

    Templates过滤器###

    介绍####

    • 写在模板中,属于Django模板语言
    • 可以修改模板中的变量,从而显示不同的内容

    使用方法####

    • {{value|filter1|filter2|..}}

    例子:{{list_nums|length}}

    Django Shell###

    介绍####

    • 一个Python的交互式命令行程序
    • 可以自动引入项目环境
    • 可以使用与项目进行交互

    使用####

     python manage.py shell
     from blog.models import Article
     Article.objects.all()
    

    用途####

    • 进行调试
    • 测试未知方法

    Admin###

    创建admin配置类####

    • 打开admin.py
    • class ArticleAdmin(admin.ModelAdmin)
    • 注册:admin.site.register(Article,ArticleAdmin)

    显示其他字串####

    • list_display = ('title', 'content',)
    • list_display同时支持tuple和list

    显示发布时期####

    • pub_time = models.DateTimeField(auto_now=True)
    • 修改完后需要移植数据(见之前笔记)

    过滤器####

    • list_filter = ('pub_time',)

    (完)

  • 相关阅读:
    Pandas中dataframe以及spark中rdd使用groupByKey进行合并
    Apriori算法Python实现
    安装Cloudera CDH
    HDFS常用命令
    vuex modules 命名空间
    sessionStore使用
    indexof使用
    vue 简单购物车实现
    etCapture() 和 ReleaseCapture()的用法
    js组合继承与寄生继承
  • 原文地址:https://www.cnblogs.com/shuibeng/p/django02.html
Copyright © 2011-2022 走看看