Django学习1
django是python的一个库,里面有一个适合快速开发网站的框架,非常适合快速开发,框架可以使用MTV或者MVC我是觉得这全凭自己喜好,没有太过硬性的规定!
首先我们先创建一个Django工程
django-admin.py startproject DjangoBlog
在你安装好Django的前提下,这条命令会帮你创建yige名字叫DjangoBlog的Django工程目录结构是这样的

manage.py ----- Django项目里面的工具,通过它可以调用django shell和数据库等。
settings.py ---- 包含了项目的默认设置,包括数据库信息,调试标志以及其他一些工作的变量。
urls.py ----- 负责把URL模式映射到应用程序。
现在我们可以开始创建自己的app了,也就是自己的博客
在当前cdm环境下命令行中输入
>>python manage.py startapp blog
这样我们就可以创建自己的博客了,他的目录结构是这样的‘

这样我们就可以在blog这个文件里完成自己的大部分操作操作了,开始讲到的MVC和MTV模式也是在这实现的:
django对各种数据库也是很支持的,这里为了方便我们直接使用SQLite数据库就好了,如果要使用别的数据库,在安装并以配置好数据库的前提下我们只需要在前面提到的主目录里更改一下settings里面关于数据库配置的信息就可以了,就是这个

设置admin应用:
Django里面有一个自带的后台管理系统--admin
首先我们要先把app添加到settings文件里:
# Application definition
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'blog',
)
ps:这里面有好多东西,有的是为了安全什么的比如跨站请求伪造什么的,这里我们先不管,我们只把自己的app添加进去就好了。
输入这条命令我们就可以启动django了:
python manage.py runserver
我们在浏览器中就可以访问 127.0.0.1 :8000 端口来访问他了
然后我们可以手动在网址哪里添加admin然后就可以访问后台管理页面了
为了我们后台管理有东西可以管理我们要向数据库里面添加一些数据进去让我i们管理
接下来我们就来创建我们自己的Model(设计数据库):
我们进入blog里面的Model文件
在里面添加如下的代码
from django.db import models
from 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)
这样我们就创建了一张名字叫做BlogsPost的表,里面有四项一下是{id,title,body,timestamp}
输入
>>python manage.py makemigrations blog
>>python manage.py migrations blog
这样我们就可以通过后台来管理数据了
接下来我们就来创建公共部分了:
从Django的角度看,一个页面具有三个典型的组件:
一个模板(template):模板负责把传递进来的信息显示出来。
一个视图(view):视图负责从数据库获取需要显示的信息。
一个URL模式:它负责把收到的请求和你的试图函数匹配,有时候也会向视图传递一些参数。
创建模板
在blog项目下创建templates目录,在目录下创建模板文件index.html
{% for post in posts %}
<h2>{{ post.title }}</h2>
<p>{{ post.timestamp }}</p>
<p>{{ post.body }}</p>
{% endfor%}
创建视图函数
打开blog项目下的view.py文件:
#coding=utf-8
#这条主要是控制编码格式的
from django.shortcuts import render
from blog.models import BlogsPost
from 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})
blog_list = BlogPost.objects.all() :获取数据库里面所拥有BlogPost对象
render_to_response()返回一个页面(index.html),顺带把数据库中查询出来的所有博客内容(blog_list)也一并返回
添加blog的URL模式
在urlpatterns中添加一条
url(r'^index/$', 'blog.views.index'),
这样就可以访问index这个页面了
添加样式
创建基础模板
在template目录里创建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>我的blog</h1>
{% block content %}
{% endblock %}
</body>
</html>
重启一下应用就可以获得一个非常简陋的blog了
以后在在此基础上升级学习开发一个样式美观大方的个人blog
【大写的ps】我目前通过老男孩的视频学django有一段时间了,现在面临找工作的问题所以我想整理一下自己的学习思路,里面可能现在也理解不是很深,然后对博客园写博客也不是很了解,可能排版问题很大,总结也不是很好,但是慢慢学习吧!

浙公网安备 33010602011771号