学习交流之用,如有不对,敬请指教!

下载安装django

pip install -i https://pypi.douban.com/simple django

创建一个django项目

django-admin startproject django_study

django项目创建完成后,我们可以使用命令

python manage.py runserver

查看是否可以正常启动django服务

创建一个django应用

在项目下terminal中

python manage.py startapp blog

应用下默认会生成以下文件

  • views.py:进行视图处理
  • models.py:定义应用模型
  • admin.py:定义Admin模块管理对象
  • apps.py:声明应用
  • tests.py:编写测试用例

另外,我们新增urls.py文件,管理应用下的路由

models.py

我们首先定义一个blog文章类Article

class Article(models.Model):
article_id = models.AutoField(primary_key=True)
title = models.TextField()
brief_content = models.TextField() # 摘要
content = models.TextField()
publish_date = models.DateTimeField(auto_now=True) # admin界面显示每个article的title
def __str__(self):
return self.title

通知django模型变更,并将变更写入数据库

python manage.py makemigrations
python manage.py migrate

urls.py

负责根据路由分发到对应的请求函数进行处理

from django.urls import path, include
import blog.views urlpatterns = [
path('content', blog.views.article_content),
path('index', blog.views.get_index_page),
path('detail/<int:article_id>', blog.views.get_detail_page),
]

views.py

处理视图逻辑,请求分发过来之后的逻辑处理。主要是从数据库获取数据并将数据填充到html返回。

admin.py

from django.contrib import admin

# Register your models here.
from .models import Article # 将Article注册到admin
admin.site.register(Article)

创建超管用户

python manage.py createsuperuser

我们可以根据我们创建的用户进入http://127.0.0.1:8000/admin/进行数据管理

配置应用到项目下

路由设置urls.py

from django.contrib import admin
from django.urls import path, include urlpatterns = [
path('admin/', admin.site.urls),
path('blog/', include('blog.urls'))
]

此文件应该是项目下urls.py,不是应用下的

项目下默认有个admin模块的路由配置,添加上我们blog应用路由

setting.py文件

注册我们blog应用

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
# 自定义的django应用
'blog.apps.BlogConfig'
]

再次执行

python manage.py runserver

可以看到我们的博客已有雏形

可以参考链接:

前端开发 Bootstrap

django文档

github托管源代码

django搭建简易blog的更多相关文章

  1. Django初体验——搭建简易blog

    前几天在网上看到了篇采用Django搭建简易博客的视频,好奇心驱使也就点进去学了下,毕竟自己对于Django是无比敬畏的,并不是很了解,来次初体验. 本文的操作环境:ubuntu.python2.7. ...

  2. Django搭建简易博客

    Django简易博客,主要实现了以下功能 连接数据库 创建超级用户与后台管理 利用django-admin-bootstrap美化界面 template,view与动态URL 多说评论功能 Markd ...

  3. Django 搭建简易博客

    新增一个 APP 博客算是一个功能集,因此我们应将其体现为一个模块.这表现在 Django 应用里则是为其创建一个 APP Package.现在让 manage.py 中的 startapp 闪亮登场 ...

  4. 使用Django创建简易Blog

    网上看了个例子,但是自己却运行不同,最后终于知道了原因,记录下来.原来没有给settings.py里的INSTALLED_APPS添加blog.就像这样: 这是一个手把手的实例教程,本来学习笔记一样, ...

  5. Django搭建简易博客教程(四)-Models

    原文链接: http://www.jianshu.com/p/dbc4193b4f95 Django Model 每一个Django Model都继承自django.db.models.Model 在 ...

  6. 用django搭建一个简易blog系统(翻译)(三)

    06. Connecting the Django admin to the blog app Django 本身就带有一个应用叫作Admin,而且它是一个很好的工具 在这一部分,我们将要激活admi ...

  7. django开发个人简易Blog——数据模型

    提到数据模型,一定要说一下MVC,MVC框架是现代web开发中最流行的开发框架,它将数据与业务逻辑分开,减小了应用之间的高度耦合.个人非常喜欢MVC开发框架,除了具有上述特性,它使得web开发变得非常 ...

  8. 手动搭建简易web框架与django框架简介

    目录 纯手写简易web框架 基于wsgiref模块 动静态网页 简单了解jinja2模块 框架请求流程 python主流web框架 django框架 简介 应用app 命令操作django pycha ...

  9. python关于Django搭建简单博客项目(详解一)

    上一篇我们说了如何搭建简易博客网站,下面我们来进行详细解答.本文没有特定顺序,请结合上一篇和源代码参照学习. 相关源代码和解析请参看:https://github.com/Cheng0829/mysi ...

  10. Django搭建博客后台

    转载自:http://sanwen8.cn/p/1cboypN.html 首先创建项目和blog应用: 在cmd命令行下,输入: django-admin.py startproject myblog ...

随机推荐

  1. 利用Git同步思源笔记

    旧文章从语雀迁移过来,原日期为2022-10-22 思源笔记是一款优秀的本地优先的双链大纲笔记软件,拥有强大的笔记编辑功能且都是免费,唯一付费的就是云同步等一些服务了.但如果暂时还用不着云同步的,我们 ...

  2. GC耗时高,原因竟是服务流量小?

    原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处. 简介 最近,我们系统配置了GC耗时的监控,但配置上之后,系统会偶尔出现GC耗时大于1s的报警,排查花了一些力气,故在这里 ...

  3. Shell 基本常识

    Shell 进入命令行 启动 shell 常用命令 系统管理命令 处理数据命令 Linux 基础管理命令 用户管理 管理文件系统 软件包管理系统 使用容器管理软件 理解 shell 子 shell 环 ...

  4. Educational Codeforces Round 141 (Rated for Div. 2) A-E

    比赛链接 A 题意 给一个数组 \(a\) ,要求重排列以后 \(a[i] \neq a[1,i-1]\) ,其中 \(a[1,i-1]\) 是前 \(i-1\) 项和. 如果无解则输出 NO :否则 ...

  5. 【Surface Detection】Segmentation-Based Deep-Learning Approach for Surface-Defect Detection

    物体表面缺陷检测现状 传统机器学习局限性 传统机器学习方法对于特定的算法只能解决特定的问题,不够灵活,无法快速适应新产品: 不同的问题有不同的特征,当需要解决新问题时,需要重新设计特征,开发周期长: ...

  6. Java用户交互方法——Scanner

    Scanner用户交互 使用Next方法接收 Scanner scanner = new Scanner(System.in); if(scanner.hasNext()){//判断用户有无输入 St ...

  7. [WPF]ICommand最佳使用方法

    public class RelayCommand:ICommand { private Predicate<object> _canExecute; private Action< ...

  8. Unity跑在Awake之前的方法

    Unity跑在Awake之前的方法 一.前言 相信大家和小黑一样,在写项目的时候遇到过以下这中情况: ____两个脚本的Awake中,都有获取信息的函数被调用.可是A脚本在B脚本获取到信息之后,才可以 ...

  9. Grafana 系列文章(六):Grafana Explore 中的日志

    ️URL: https://grafana.com/docs/grafana/latest/explore/logs-integration/#labels-and-detected-fields D ...

  10. 【学习笔记】C/C++ 设计模式 - 观察者模式

    前言 估计 2020 年写应用程序的机会比较多,之前一直在做嵌入式驱动程序和Android系统定制方面的工作,在应用程序方面积累的不是很多,因此迫切需要多学学应用编程这方面的知识. 之前在写小的应用程 ...