Django搭建博客_5:用户登录

a之前创建了超管用户admin,在实际使用中,一般用户是 不能轻易登录管理后台的,非管理员用户最好是从前台登录,登录之后仅具有所规定的功能。

1 创建应用

为了实现用户登录,退出,注册等功能,从而进行用户管理,

  • 因此我们要创建一个新的应用account.
python manage.py startapp account
  • 之后在./mysite/settings.py中对新应用进行配置。
INSTALLED_APPS = [
    ...,
    'blog',
    'account',
]
  • 接着就是在./mysite/urls.py中进行URL配置。
urlpatterns = [
    ...,
	url(r'^account/', include('account.urls', namespace='account', app_name='account')),
]
  • 最后在 ./account目录中创建urls.py文件,并设置还本应用的路径。
from django.conf.urls import url
from . import views

from django.conf import settings

urlpatterns = [
    url(r'^login/$', views.user_login, name='user_login'),
]

views.user_login意味着必须要在views.py中创建一个名为user_login的函数来响应请求。

至此,基本配置已经完成。

2 表单类

在用户注册页面,一般都有用户登录框,这里使用表单类来完成该功能。表单是网站交互性的经典方式,主要负责 数据采集的功能。

在./account下创建forms.py文件,代码如下。

from django import forms

class LoginForm(forms.Form):
	username = forms.CharField()
	password = forms.CharField(widget=forms.PasswordInput)

可通过交互模式来理解表单类的概念:

~ python manage.py shell
Python 3.6.0 (default, Mar 29 2020, 19:12:59)
[GCC 4.2.1 Compatible Apple LLVM 11.0.0 (clang-1100.0.33.17)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)</
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,这是一个比较大的问题,我会尽可能地简要地回答。首先,对于需求分析,你需要考虑以下几个方面: 1. 博客的功能要求:包括博客的基本功能(如发布文章、编辑文章、删除文章等)、用户权限管理、评论管理、搜索功能等。 2. 博客的设计要求:包括博客的整体设计(如主题、样式、排版等)、文章的分类、标签等。 3. 数据库的设计:包括数据库的表设计、数据表之间的关系、索引设计等。 对于数据库的设计,你可以考虑使用 Django 自带的 ORM(Object-Relational Mapping)框架,它可以帮助你更方便地操作数据库。 以下是一个简单的数据库表设计示例: ```python from django.db import models class Category(models.Model): name = models.CharField(max_length=100) class Tag(models.Model): name = models.CharField(max_length=100) class Post(models.Model): title = models.CharField(max_length=100) body = models.TextField() created_time = models.DateTimeField(auto_now_add=True) modified_time = models.DateTimeField(auto_now=True) excerpt = models.CharField(max_length=200, blank=True) category = models.ForeignKey(Category) tags = models.ManyToManyField(Tag, blank=True) ``` 在这个示例,我们定义了三个数据表:Category、Tag 和 Post。Category 表和 Tag 表分别用于存储文章的分类和标签,Post 表用于存储文章的内容。其,Post 表和 Category 表之间是一对多的关系,Post 表和 Tag 表之间是多对多的关系。 当你定义完数据表之后,可以使用 Django 的命令行工具来生成数据库表格: ``` python manage.py makemigrations python manage.py migrate ``` 这样,你就可以开始在 Django 使用这些数据表了。 当然,这只是一个简单的示例,实际的博客系统可能会更复杂,你需要根据自己的需求进行设计。希望这些信息对你有所帮助。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值