Django1.11搭建粗陋blog
来源:互联网 发布:淘宝日落共青城第三部 编辑:程序博客网 时间:2024/06/05 07:33
python django 版本的错乱,使网上的资源着实好少。但还得感谢网上各路大神,以及官网上的免费教程(document的英文字太多 没中文简明直观扼要,要想深入,必须硬着头皮看)
配置环境:
Linux
python3.5
django1.11
===============
创建mysite工程项目:
(venv) x@x-MacBook:~/skywalker$ django-admin.py startproject mysite
在mysite目录下创建blog应用
(venv) x@x-MacBook:~/skywalker$ cd mysite(venv) x@x-MacBook:~/skywalker/mysite$ python manage.py startapp blog
同步数据库
python manage.py migrate创建超级用户,用户登录admin后台
(venv) x@x-MacBook:~/skywalker/mysite$ python manage.py createsuperuserUsername (leave blank to use 'x'): skyxEmail address: skyx@qq.comPassword: Password (again): Superuser created successfully.添加blog应用,打开mysite/mysite/settings.py 文件:
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'blog',
数据迁移
(venv) x@x-MacBook:~/skywalker/mysite$ python manage.py makemigrations blogMigrations for 'blog': blog/migrations/0001_initial.py - Create model BlogsPost启动django web服务器
(venv) x@x-MacBook:~/skywalker/mysite$ python manage.py runserverPerforming system checks...System check identified no issues (0 silenced).You have 1 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): blog.Run 'python manage.py migrate' to apply them.如果出错,再同步下数据
python manage.py migrate访问网址127.0.0.1:8000/admin/
增加model
我们打开blog目录下的models.py文件,这是我们定义blog数据结构的地方。打开mysite/blog/models.py 文件进行修改:
from django.db import modelsfrom django.contrib import admin# Create your models here.class BlogsPost(models.Model): title = models.CharField(max_length = 150) body = models.TextField() timestamp = models.DateTimeField()admin.site.register(BlogsPost)出现错误时 更新初始化这两个指令
python manage.py makemigrations blogpython manage.py migrate再次runserver启动服务,访问admin后台 编写blog
设置admin的BlogsPosts界面
打开mysite/blog/models.py 文件,做如下修改:
from django.db import modelsfrom django.contrib import admin# Create your models here.class BlogsPost(models.Model): title = models.CharField(max_length = 150) body = models.TextField() timestamp = models.DateTimeField()class BlogPostAdmin(admin.ModelAdmin): list_display = ('title','timestamp') admin.site.register(BlogsPost,BlogPostAdmin)
创建blog的三大块:
一个模板(template):模板负责把传递进来的信息显示出来。
一个视图(view):视图负责从数据库获取需要显示的信息。
一个URL模式:它负责把收到的请求和你的试图函数匹配,有时候也会向视图传递一些参数。
============================================================================创建模板在blog项目下创建templates目录(mysite/blog/templates/),在目录下创建模板文件index.html,内容如下:
{% extends "base.html" %} {% block content %} {% for post in blog_list %} <h2>{{ post.title }}</h2> <p>{{ post.timestamp | date:"1,F jS"}}</p> <p>{{ post.body }}</p> {% endfor %} {% endblock %}
创建视图函数,mysite/blog/views.py文件
from django.shortcuts import renderfrom blog.models import BlogsPostfrom django.shortcuts import render_to_response# Create your views here.def Index(request): blog_list = BlogsPost.objects.all() return render_to_response('index.html',{'blog_list':blog_list})
在mysite/urls.py文件里添加配置blog的url:
from django.conf.urls import urlfrom django.contrib import adminfrom blog import views as blog_views urlpatterns = [ url(r'^index',blog_views.Index,name='index'), url(r'^admin/', admin.site.urls),]
添加样式
在mysite/blog/templates目录里创建base.html的模板
<html> <style type="text/css"> body{color:#efd;background:#453;padding:0 5em;margin:0} h1{padding:2em 1em;background:#675} h2{color:#bf8;border-top:1px dotted #fff;margin-top:2em} p{margin:1em 0} </style> <body> <h1>skyblog</h1> <h3>给岁月以文明 给时光以生命</h3> {% block content %} {% endblock %} </body></html>
输入网址http://127.0.0.1:8000/index/刷新。一个粗陋的blog雏型就完成啦。要想丰满这个博客 go to https://docs.djangoproject.com/en/1.11/
- Django1.11搭建粗陋blog
- Django1.11环境搭建
- django1.6 博客的快速搭建first blog
- django1.6 博客的快速搭建second blog v2
- Django1.11.1+python3.5+Pycharm 快速搭建博客blog
- Django1.3环境搭建
- Debian+Django1.11+Apache2.4+mod_wsgi+python2.7搭建服务器
- django1.11连接mysql
- python3.4 + django1.8的环境搭建
- (二)搭建环境之django1.8
- python3.6.2+django1.11+mysql
- Python2.6+Django1.4+Mysql5.5+eclipse的环境搭建
- python25+django1.4+mysql5.1+apache2.2搭建生产管理网站
- 使用Python和Django1.4搭建Web应用
- apache2.2+django1.6.5+python34+mod_wsgi3.5环境搭建
- django1.7 配置demo教程(环境搭建)
- Django 环境搭建(CentOS65 + Django1.7 + mySQL5.1)
- Ubuntu Linux平台下Django1.6.8开发环境搭建
- 系统自动安装(下)——搭建DHCP服务器
- 用TeamCity实现npm项目的自动部署
- Kickstart脚本编辑
- python的函数(一)
- dhcp服务器搭建
- Django1.11搭建粗陋blog
- class练习2. 类之间的交互 / 条件型交互(两方关系的成立)
- 系统延迟及定时机制
- 无穷小微积分放飞互联网,如何让其“飞”起来?
- ubuntu搭建sftp服务器
- ubuntu 查看 查看 c++ 库函数
- 从一坨「便便」说起,大V亲测iPhone X为什么这么贵!
- 自动驾驶「黑手党」十年启示录
- 虽然票早已被抢光,你可以从机器之心关注NIPS 2017