利用Django快速搭建简单文章发发布
文章目录
前言
建立个人博客网站要涉及前后端的知识,这里主要回顾一下python、html等基础知识一、建立APP及配置
1.建立app
首先查看文件目录下有 manage.py,然后输入以下
python manage.py startapp blog
会自动创建如下文件夹:
models:数据库管理
views:前端管理
等
2.配置
修改项目settings.py
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'blog',
]
在最后添加app名字
二、移植、并创建超级管理员
1.移植
1.1先同步
python manage.py migrate 移植
1.2 超级账户
python manage.py createsuperuser
1.3移植
python manage.py makemigrations
三、创建表
3.1 models
修改models,是建立数据库样式
class Blog(models.Model):
title = models.CharField(max_length=50,verbose_name='标题')
content = models.TextField(verbose_name='文章内容',default='')
count = models.IntegerField(verbose_name='阅读次数', default=0 )
creat_time = models.DateTimeField(verbose_name='创建时间',auto_now=True)
class Meta:###改中文显示
verbose_name = '博客'
verbose_name_plural = verbose_name
def __str__(self):
return self.title
数据表名Blog,有title、content、count、creat_time四个属性,格式分别是按照定义,有的有默认值
四、修改后台
4.1 修改admin.py
@admin.register(Blog)
class BlogAdmin(admin.ModelAdmin):
list_display=["title","creat_time","count"]
使得在admin后台可以显示这些属性
五、再次同步数据库
5.1 修改admin.py
python manage.py makemigrations
python manage.py migrate
六、添加页面模板
6.1 修改settings.py
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR,"templates")],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
先导入os,把os.path.join(BASE_DIR,“templates”)添加进来
6.2 修改views.py
相当于知道每个函数掉什么模板,传递参数。
def index(request):
blogs = Blog.objects.all().order_by("-creat_time")
return render(request,"index.html",
{"blogs":blogs}
)
def read_blog(request,id):
blog = Blog.objects.get(id=id)
return render(request,"content.html",
{"blog":blog}
)
6.3 修改urls.py
urlpatterns = [
path('admin/', admin.site.urls),
path('', index , name='index'),
path('read/<int:id>', read_blog , name='read_blog'),
]
相当于初始路由
6.4 修改urls.py
在templates文件夹下创建html文件,与views对应
index如下
<html>
<head>
<title>我的首页</title>
</head>
<body>
<h1>欢迎</h1>
<ul>
{% for blog in blogs %}
<li>
<a href="{% url 'read_blog' blog.id %}">{{blog.title}}</a>
</li>
<li>创建于 {{blog.creat_time}}</li>
{% endfor %}
</ul>
</body>
</html>
content如下:
<html>
<head>
<title>我的首页</title>
</head>
<body>
<h1 style="float:right">
<a href="/">回到首页</a>>
</h1>
<h1>{{blog.title}}</h1>
<div>
{{blog.content}}
</div>
</body>
</html>
七、部署
7.1 修改数据库为mysql
修改settings,按照自己的数据库填写
DATABASES = {
'default': {
# 'ENGINE': 'django.db.backends.sqlite3',
# 'NAME': BASE_DIR / 'db.sqlite3',
'ENGINE': 'django.db.backends.mysql',
'NAME': 'blog',
'USER': 'blog',
'PASSWORD':'niu199456',
'HOST':'192.168.253.128',
'PORT':'3306',
}
}
7.2 修改__init__.py
pymysql.install_as_MySQLdb()
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。