django从零搭建个人博客
时间: 2023-10-23 16:09:20 浏览: 45
搭建个人博客可以使用 Django,下面是从零开始搭建个人博客的步骤:
1. 安装 Django
使用 pip 命令安装 Django:
```
pip install django
```
2. 创建 Django 项目
使用以下命令创建 Django 项目:
```
django-admin startproject myblog
```
3. 创建 Django 应用
使用以下命令创建 Django 应用:
```
cd myblog
python manage.py startapp blog
```
4. 配置数据库
在 settings.py 中配置数据库:
```python
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
```
5. 创建博客模型
在 models.py 中创建博客模型:
```python
from django.db import models
class Blog(models.Model):
title = models.CharField(max_length=100)
content = models.TextField()
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
def __str__(self):
return self.title
```
6. 迁移数据库
使用以下命令迁移数据库:
```
python manage.py makemigrations
python manage.py migrate
```
7. 创建博客视图
在 views.py 中创建博客视图:
```python
from django.shortcuts import render
from .models import Blog
def blog_list(request):
blogs = Blog.objects.all()
return render(request, 'blog_list.html', {'blogs': blogs})
def blog_detail(request, pk):
blog = Blog.objects.get(pk=pk)
return render(request, 'blog_detail.html', {'blog': blog})
```
8. 创建博客模板
在 templates 目录下创建博客列表模板 blog_list.html:
```html
{% extends 'base.html' %}
{% block content %}
{% for blog in blogs %}
<h1>{{ blog.title }}</h1>
<p>{{ blog.content }}</p>
<p>{{ blog.created_at }}</p>
<p>{{ blog.updated_at }}</p>
{% endfor %}
{% endblock %}
```
在 templates 目录下创建博客详情模板 blog_detail.html:
```html
{% extends 'base.html' %}
{% block content %}
<h1>{{ blog.title }}</h1>
<p>{{ blog.content }}</p>
<p>{{ blog.created_at }}</p>
<p>{{ blog.updated_at }}</p>
{% endblock %}
```
9. 创建博客 URL
在 urls.py 中创建博客 URL:
```python
from django.urls import path
from . import views
urlpatterns = [
path('', views.blog_list, name='blog_list'),
path('<int:pk>/', views.blog_detail, name='blog_detail'),
]
```
10. 创建基础模板
在 templates 目录下创建基础模板 base.html:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>{% block title %}{% endblock %}</title>
</head>
<body>
<nav>
<ul>
<li><a href="{% url 'blog_list' %}">博客列表</a></li>
</ul>
</nav>
{% block content %}{% endblock %}
</body>
</html>
```
11. 运行 Django 项目
使用以下命令运行 Django 项目:
```
python manage.py runserver
```
打开浏览器,在地址栏输入 http://localhost:8000/ 即可看到博客列表页。