django实战(一)简单博客显示
来源:互联网 发布:工程网络计划技术讲义 编辑:程序博客网 时间:2024/06/05 22:43
一直想好好学习一下Python,正好Django是一个很好的网站开发框架,可以用来web程序。接下来,以一个博客为例。
一、创建基本框架:(django1.0+python3.6+pycharm)
(1)创建项目
控制台输入以下命令:
django-admin startproject MyDjango
(2)创建app
cd MyDjango
Python manage.py startapp MyBlog
二、Django应用程序开发(MVT框架开发)
1 数据库表的建立(M)
Myblog/model.py:
首先,在setting.py中的INSTALLED_APPS里加上MyBlog;
在model.py内建立表内容:(标题,内容,发布时间等)
class BlogPost(models.Model): title=models.CharField('标题',max_length=50) content=models.TextField(help_text='博客内容') pub=models.DateTimeField('发布时间') class Meta: verbose_name = "博客" verbose_name_plural = verbose_name ordering = ["-pub"] def __str__(self): return self.title
数据库建立完成后,运行以下:
python manage.py makemigrations
python manage.py migrate
创建成功。
管理数据库内容:
#coding=utf-8 from django.contrib import admin from .models import BlogPost # Register your models here. class BlogPostAdmin(admin.ModelAdmin): list_display = ('title','pub') admin.site.register(BlogPost,BlogPostAdmin)
创建管理员:python manage.py createsuperuser输入用户名,密码;创建成功。输入以下命令:python manage.py runserver运行服务器然后在浏览器网址127.0.0.1:8000/admin登录:点击添加博客![图片1](http://img.blog.csdn.net/20170325160241564?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTE4ODUyODY3MDM1/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)![图片2](http://img.blog.csdn.net/20170325160325508?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTE4ODUyODY3MDM1/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
2 添加视图控制:(V)
view.py里:(一个视图函数对应一个url)
#coding=utf-8from django.shortcuts import render,render_to_responsefrom .models import BlogPost# Create your views here.def myBlog(request): blog_list=BlogPost.objects.all() return render_to_response('BlogTemplate.html',{'blog_list':blog_list})
urls.py里,定义新的url:
url(r’^myBlogs/$’,myBlog),#当然得引入view(from MyBlog.view import *)
3 完成模板配置(T)
在MyBlog文件夹里新建文件夹templates,然后在templates里新建BlogTemplate.html。
我们可以定义一个基础的base.html作为所有页面的基类:
base.html
<!DOCTYPE html><html lang="zh"><head><meta charset="UTF-8"> <title>标题</title></head><style type="text/css"> body{ color:#efd; background: #bbbbbb; padding: 12px 5em; margin: 7px; } h1{ padding: 2em ; background: #675; } h2{ color: #85F2F2; border-top: 1px dotted #fff; } p{ margin: 1em 0; }</style><body><h1>我的博文</h1><h3>这是简洁的博文</h3>{% block content %}{% endblock %}</body></html>
{% extends “base.html” %}
{% block content %}
{% for post in blog_list %}
<h2>{{ post.title }}</h2> <p>{{ post.pub}}</p> <p>{{ post.content }}</p> {% endfor %}{% endblock %}
”’
运行命令:Python manage.py runserver,获得URL
在浏览器输入:http://127.0.0.1:8000/myBlogs/,获得内容:
到这里,一个简单的博客就结束了。
总结一下:django开发是以MVT模式开发的,熟悉每个模块的作用才能开发出好的程序。
- django实战(一)简单博客显示
- python Django 搭建简单的个人博客网站(一)
- Django实战系列(一)
- Django 搭建博客(一)
- Django在OS X下的编程实战(一)构建一个博客系统
- django博客页面显示
- django实战篇一
- Python学习笔记23:Django搭建简单的博客网站(一)
- Django搭建简易博客教程(一)
- django 博客一
- django实战(二)一个较完整的博客系统
- Django使用-Django搭建简单博客
- django 实战教程一 -- 初探
- Django实例----简单的博客
- Django搭建博客记(一)
- python-django web开发实战记实录(一)
- django入门教程(二)简单的博客系统
- Django博客开发(十三)—一个简单的站内搜索
- 机器学习中常用的矩阵求导公式
- 解决锐捷客户端登陆时网卡网关配置有误的方法
- 页式存储管理
- 事务一致性与原子性的区别
- 1118. Birds in Forest (25)
- django实战(一)简单博客显示
- Session的创建和销毁
- Android-BLE低功耗蓝牙开发
- 300. Longest Increasing Subsequence/DP
- GYM 100694 J.Ticket Booking(贪心)
- getServletContext().getRealPath()问题
- Werror=unused-but-set-variable报错的解决
- 分书问题,递归调用
- 【算法】树上启发式合并算法