# grassroadsZ_Blog **Repository Path**: grassroadsZ/grassroadsZ_Blog ## Basic Information - **Project Name**: grassroadsZ_Blog - **Description**: No description available - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-02-15 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # grassroadsZ_Blog 个人博客,使用python3+django2.1 ## 初始化 ```shell script mkdir "grassroadsZ_Blog" ; python3 -m venv env; source env/bin/activate; pip3 install django==2.1; python manage.py startproject grassroadsZ_Blog; ``` ## 创建App ```shell script python manage.py startapp article ``` 全局setting.py 中注册app: article 全局urls中新增article的路径 article app中编写urls 与 models文件 生成迁移文件 ```shell script python manage.py makemigrations python manage.py migrate ``` 编写article的view视图函数article_list 在article/urls.py 中 添加article_list的路径映射 创建后台超级管理员账号 ```shell script python manage.py createsuperuser ``` 将ArticlePost 在article的admin.py文件注册,访问http://127.0.0.1:8000/admin/ 在根目录新增templates 目录并在全局settings中添加,在templates中新增article目录,新增文件list html文件 下载[bootstrap](https://getbootstrap.com/docs/4.1/getting-started/download/) 和[jquery](https://jquery.com/download/)及[popper](https://unpkg.com/popper.js@1.14.4/dist/umd/popper.js)的js代码存放于根目录的static目录 全局settings中添加static目录 ```python STATICFILES_DIRS = ( os.path.join(BASE_DIR, "static"), ) ``` 编写文章详情article_detail函数,编写article目录下的detail.html文件 ## 支持MarkDown ```shell script pip install markdown ``` static下新增md_css目录 ## 代码高亮 ```shell script pip install Pygments cd static/md_css/ && pygmentize -S monokai -f html -a .codehilite > monokai.css ``` ## 文章删除接口 使用layer弹窗组件至static目录,增加删除弹窗 在base.html引入layer.js,在detail.html中新增js函数confirm_safe_delete方法,使用csrf_token验证,post方法安全删除文章 ## 修改文章 新增视图函数article_update,新增模板文件update.html ## 登录与登出 新增app:users; 新建继承forms.Form的登录表单类UserLogin类; 新增视图函数user_login,新增模板文件login.html ## 注册 修改users/urls.py ```python path('register/', views.user_register, name='register'), ``` 新增templates/users/register.html ```html {% extends "base.html" %} {% load staticfiles %} {% block title %} 登录 {% endblock title %} {% block content %}

{% csrf_token %}
{% endblock content %} ``` ## 删除用户 修改users/urls.py ```python path('delete//', views.user_delete, name='delete') ``` 修改header.html ```html 删除用户 {% if user.is_authenticated %} {% endif %} ``` ## 重置密码 ```shell pip3 install -U django-password-reset ``` 全局settings注册 根路由urls.py 添加app地址 /users/login.html新增 ```html
忘记密码了?
点击这里重置密码
``` 全局settings配置邮箱相关