个人博客创建[2]快速搭建简单文章发布网站

利用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提供了大量能使我们快速便捷地处理数据的函数和方法。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值