1)增加应用

python3 manage.py startapp app-name

2. settings.py中,“INSTALLED_APPS”添加应用名称。

3. 在templates中新增网页index.html

4. view中,

def index(request):
return render(request, 'index.html')

5. urls.py中,

from ganji.views import index

url(r'^index/', index),

6. html中的静态文件,首先增加static目录,与templates同级,html中使用

{% load static %}
href="{% static 'homework.css' %}"

7. settings.py中

STATIC_URL = '/static/'
STATICFILES_DIRS = (os.path.join(BASE_DIR, "static"),) # 这个必须有,要不然Django是找不到文件夹的位置的 

8. python3 manage.py runserver

2)新增数据库模型

django 1.7 新的migration框架,取代south

  • makemigrations,用来根据你对模型做的变更创建新的迁移脚本。
  • migrate,用来使迁移生效,以及未生效时报告它们的状态。

定义博客的数据库模型

我们网站的CMS已经做好了,现在要定义我们自己的模型。

easyblog/models.py

from django.db import models
from django.contrib import admin class BlogPost(models.Model):
title = models.CharField(max_length=200)
body = models.TextField()
timestamp = models.DateTimeField() admin.site.register(BlogPost)

 上面的代码帮我们定义了一个简单的数据内容。现在我们要让数据库发生变化。执行以下命令

python3 manage.py makemigrations pure_layout_blog
qiongyazhudembp:mysite qiongyanzhu$ python3 manage.py makemigrations pure_layout_blog
System check identified some issues: Migrations for 'pure_layout_blog':
0003_auto_20160622_1323.py:
- Create model BlogPosts
- Create model BlogUsers
- Delete model BlogBody
- Delete model BlogPost
- Delete model UserInfo
- Alter index_together for blogusers (2 constraint(s))
- Add field post_author to blogposts
- Add field post_parent to blogposts
- Alter index_together for blogposts (3 constraint(s))
qiongyazhudembp:mysite qiongyanzhu$ python3 manage.py makemigrations pure_layout_blog
Migrations for 'pure_layout_blog':
0004_auto_20160622_1326.py:
- Alter field comment_count on blogposts
- Alter field menu_order on blogposts
- Alter field user_status on blogusers
qiongyazhudembp:mysite qiongyanzhu$
python3 manage.py sqlmigrate pure_layout_blog 0001
python3 manage.py migrate

按顺序执行命令,就会把我们新增的models生成。这个时候进入CMS就可以看到多了一个group,在里面输入标题,内容和时间,保存即可。

[Django 2]第一个django应用的更多相关文章

  1. Django教程:第一个Django应用程序(4)

    Django教程:第一个Django应用程序(4) 2013-10-09 磁针石 #承接软件自动化实施与培训等gtalk:ouyangchongwu#gmail.comqq 37391319 #博客: ...

  2. Django教程:第一个Django应用程序(3)

    Django教程:第一个Django应用程序(3) 2013-10-08 磁针石 #承接软件自动化实施与培训等gtalk:ouyangchongwu#gmail.comqq 37391319 #博客: ...

  3. Django之真正创建一个django项目

    真正创建一个django项目 1 创建Django项目     :new-project 2 创建APP :  python manager.py startapp app01 3 setting 配 ...

  4. python web开发——django学习(二)第一个django网站运行成功

    1.写message_form.html <!DOCTYPE html> <html lang="en"> <head> <meta ch ...

  5. 如何开启一个Django项目

    一:新建的Django工程 新建了一个Django工程后,工程会自动创建有两个templates文件夹和unitled文件夹,再加上一个manage.py文件. 二:Django开发的一般流程 在工程 ...

  6. Django博客开发教程,Django快速开发个人blog

    学DjangoWEB框架,估计大部分的朋友都是从Blog开发开始入门的,Django中文网发布了一个Django开发教程,这个教程简单易懂,能让你快速的使用Django开发一个漂亮的个人blog,是D ...

  7. [Django 1]安装Django并创建虚拟虚拟环境项目

    1)安装Django 使用pip来安装,命令如下: pip3 install Djangopip install Django(安装到python2)python3 -m pip install Dj ...

  8. 第一个django

    4.创建第一个Django工程 Django环境算是配置完成了,你可以到命令提示符下创建第一个Django应用,进入某个目录,执行django-admin.py startproject myproj ...

  9. 搭建你的第一个Django应用程序

    首先你要确保你机器上面安装了python:Python开发_python的安装 python的相关学习资料:http://www.cnblogs.com/hongten/tag/python/ 其次, ...

随机推荐

  1. C语言中把数字转换为字符串 【转】

    在将各种类型的数据构造成字符串时,sprintf 的强大功能很少会让你失望.由于sprintf 跟printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出 ...

  2. iOS 苹果开发证书失效的解决方案(Failed to locate or generate matching signing assets)

    从2月14日开始,上传程序的同学可能会遇到提示上传失败的提示. 并且打开自己的钥匙串,发现所有的证书全部都显示此证书签发者无效. 出现以下情况: Failed to locate or generat ...

  3. Android项目实战(二十五):Android studio 混淆+打包+验证是否成功

    前言: 单挑Android项目,最近即时通讯用到环信,集成sdk的时候 官方有一句 在 ProGuard 文件中加入以下 keep. -keep class com.hyphenate.** {*;} ...

  4. 初识JavaScript 变量, 操作符, 数组

    这里讲的不会太多, 因为所有的语言都是一样的, 一些基本的东西, 所以就随便写写. 变量 变量就是可变的量, 编程角度理解就是用于存储某种/某些数值的存储器. 我们可以把变量具象理解为一个盒子, 而我 ...

  5. 【原】iOS动态性(三) Method Swizzling以及AOP编程:在运行时进行代码注入

    概述 今天我们主要讨论iOS runtime中的一种黑色技术,称为Method Swizzling.字面上理解Method Swizzling可能比较晦涩难懂,毕竟不是中文,不过你可以理解为“移花接木 ...

  6. width 、 height 与 box-sizing : border-box ,content-box 的关系

    默认 width .height的 content-box 的宽高. box-sizing 经常用来设置 width.height指定的区域 box-sizing 经常用做一些自适应的布局. 语法: ...

  7. Ubuntu如何选择更新源

    刚装上Ubuntu, 决定先更新一下源. 虽然网上搜索提供了很多更新源,结果替换上实际使用的时候,却发现总是有404无法连接的情况. 后来查查资料,发现Ubuntu自己就提供了很多的源管理. 具体更新 ...

  8. AjaxHelper简介

    在Asp.Net MVC中提供了AjaxHelper类: Ajax.ActionLink 创建一个超链接,点击时,使用Ajax提交数据到一个指定的控制器 Ajax.RouteLink 和ActionL ...

  9. 如何查看Oracle客户端版本

    在实际工作中,总会遇到一些需要查看.验证ORACLE客户端版本的问题,因为一台服务器可能装了多个Oracle客户端版本:也有可能你需要知道安装的版本是32位还是64位的.如何查看Oracle客户端(O ...

  10. C语言核心之数组和指针详解

    指针 相信大家对下面的代码不陌生: int i=2; int *p; p=&i;这是最简单的指针应用,也是最基本的用法.再来熟悉一下什么是指针:首先指针是一个变量,它保存的并不是平常的数据,而 ...