以下是"Django入门使用示例"的完整攻略.
首先,我们需要创建Django项目.在命令行中输入以下命令:
django-admin startproject mysite
其中mysite是项目的名称,可以根据需要自定义.
此时此刻呢,我们需要创建一个Django应用,这里我们以blog为例,在命令行中输入以下命令:
python manage.py startapp blog
其中blog是应用的名称,可以根据需要自定义.
在Django中,模型是与数据库相关的类,它描述了数据在数据库中的结构.在blog应用中,我们可以定义一个Post模型,用来存储博客文章的信息.在blog/models.py文件中添加以下代码:
from django.db import models
class Post(models.Model):
updated_at = models.DateTimeField(auto_now=True)
其中,我们定义了一个Post模型,包含了title、content、created_at和updated_at四个属性,分别对应文章的标题、内容、创建时间和更新时间.
定义完模型后,我们需要将模型映射到数据库中,并创建相应的数据库表.在命令行中依次输入以下命令:
python manage.py makemigrations blog
以上命令会生成一个迁移文件.此时此刻呢,我们需要执行迁移操作:
python manage.py migrate
以上命令会根据迁移文件生成数据表.
定义好模型和数据表后,我们可以进行数据的增删改查等操作.在blog/views.py文件中添加以下代码:
from django.shortcuts import render
from blog.models import Post
def post_list(request):
return render(request, 'blog/post_list.html', {'posts': posts})
其中,我们定义了一个post_list视图函数,用来显示所有的博客文章内容.这里我们使用了ORM(对象关系映射)的方式查询数据库,即使用Post.objects.all()获取了所有的文章数据.
在templates/blog目录下创建post_list.html文件,添加以下代码:
以上代码定义了一个HTML页面,用来展示所有博客文章的标题、创建时间和内容.其中,我们使用Django模板语言的for循环语句,依次输出每篇文章的信息.
最后,在urls.py文件中添加以下代码:
from django.urls import path
from blog.views import post_list
urlpatterns = [
path('post_list/', post_list, name='post_list'),
]
以上代码定义了一个URL,用来访问post_list视图函数.
python manage.py startapp accounts
此时此刻呢,我们创建一个User模型,用来存储注册用户的信息,在accounts/models.py文件中添加以下代码:
from django.db import models
from django.contrib.auth.models import AbstractBaseUser, BaseUserManager
class UserManager(BaseUserManager):
objects = UserManager()
以上代码定义了一个User模型,继承了Django内置的AbstractBaseUser类,并使用BaseUserManager类进行了模型管理(UserManager).其中,我们定义了email、is_admin和is_active三个属性,分别对应用户的邮箱、是否为管理员和账户是否激活.同时,我们使用了ORM的方式定义了create_user和create_superuser方法,用来创建普通用户和超级用户.
此时此刻呢,我们需要创建数据表.在命令行中依次输入以下命令:
python manage.py makemigrations accounts
python manage.py migrate
最后,我们可以在视图函数中使用ORM的方式进行数据查询、修改等操作.