千家信息网

【python项目实战】BBS论坛 (1)搭建项目框架

发表于:2025-02-06 作者:千家信息网编辑
千家信息网最后更新 2025年02月06日,一、准备工作:Windows7-64位python 2.7mysql version: 5.7.12django 1.9.5IDE开发工具:pycharm 2.7二、设计表结构主要涉及点:1、表的ER
千家信息网最后更新 2025年02月06日【python项目实战】BBS论坛 (1)搭建项目框架



一、准备工作:

Windows7-64位

python 2.7

mysql version: 5.7.12

django 1.9.5

IDE开发工具:pycharm 2.7




二、设计表结构


主要涉及点:

1、表的ER图,要设计逻辑,有哪些表,每个表有哪些属性

2、models的 模型常用字段要熟练,本次使用的有:


CharField

ForeignKey

ImageField

TextField

DateTimeField

BooleanField

IntegerField

ManyToManyField

OneToOneField


##models.py from __future__ import unicode_literalsfrom django.db import modelsfrom django.contrib.auth.models import User# Create your models here.# 帖子信息表class Article(models.Model):    title = models.CharField(u"文章标题",max_length=255,unique=True)    category = models.ForeignKey("Category",verbose_name=u"板块")    head_img = models.ImageField(upload_to="uploads")    content = models.TextField(u"内容")    auther = models.ForeignKey("UserProfile")    publish_date = models.DateTimeField(auto_now=True)    hidden = models.BooleanField(default=True)    priority = models.IntegerField(u"优先级",default=1000)    def __unicode__(self):        return "<%s,author:%s>" %(self.title,self.auther)#评论表class Comment(models.Model):    article = models.ForeignKey(Article)    user = models.ForeignKey("UserProfile")    parent_comment = models.ForeignKey('self',related_name='p_comment',blank=True,null=True)    comment = models.TextField(max_length=1000)    date = models.DateTimeField(auto_now=True)    def __unicode__(self):        return "<%s,user:%s>" %(self.comment,self.user)#点赞数表class ThumbUp(models.Model):    article = models.ForeignKey('Article')    user = models.ForeignKey('UserProfile')    date = models.DateTimeField(auto_now=True)    def __unicode__(self):        return "" %(self.auther)#板块分类表class Category(models.Model):    name = models.CharField(max_length=64,unique=True)    admin = models.ManyToManyField('UserProfile')    def __unicode__(self):        return self.name# 用户信息表class UserProfile(models.Model):    user = models.OneToOneField(User)    name = models.CharField(max_length=32)    groups = models.ManyToManyField('UserGroup')    def __unicode__(self):        return self.name# 用户组表class UserGroup(models.Model):    name = models.CharField(max_length=64,unique=True)    def __unicode__(self):        return self.name


三、settings.py 里面加入数据库资源信息


首先自己需要在mysql里面创建一个数据库,名字叫s11bbs,然后编辑settings.py

DATABASES = {    'default': {        'ENGINE': 'django.db.backends.mysql',        'NAME': 's11bbs',        'HOST':'',        'USER':'root',        'PASSWORD':'123',        }}


四、同步数据库

cd 到manage.py 文件所在目录


python manage.py migrate


python manage.py makemigrations

python manage.py migrate


五、注册数据库表


在admin.py里加入,就能访问django的后台管理界面了,可以自己尝试添加一些测试数据


http://127.0.0.1:8000/admin


##  admin.py from django.contrib import adminimport models# Register your models here.admin.site.register(models.Article,ArticleAdmin)admin.site.register(models.Category,CategoryAdmin)admin.site.register(models.Comment)admin.site.register(models.ThumbUp)admin.site.register(models.UserProfile)admin.site.register(models.UserGroup)













数据 数据库 信息 板块 用户 设计 项目 熟练 优先级 内容 名字 后台 字段 属性 工具 帖子 常用 开发工具 所在 文件 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 上位机软件开发电脑配置 手机克隆可以哪些数据库 班加罗尔软件开发 我的世界哪个主播有服务器 2022年中国网络安全事件 日立服务器编程软件 怎么改一个私服服务器 服务器的水 浙江戴尔服务器虚拟化迁移 湖南小红袄网络技术 党员网络安全示范岗工作总结 内蒙古科技大学互联网加 广州erp软件开发怎样收费 四川必达软件开发有限公司 osql 备份数据库 民航网络安全技能竞赛 山西餐饮软件开发价格合理 剑侠世界3服务器更新时间 学校网络安全学习心得体会 植物染色体数据库能查到吗 jsp会占用服务器资源吗 手机克隆可以哪些数据库 如何将线上数据库导到本地服务器 网络安全检察专业 传统软件开发是什么意思 日本樱花云服务器免费网页 港闸区智能网络技术诚信经营 茂名戴尔服务器多重优惠 无服务器计算机有前景吗 网络安全类型的基金
0