首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

(Django) ForeignKey和评论:尝试保存发表评论的用户的用户名时出现问题

在Django中,ForeignKey是一种关系字段,用于在模型之间建立关联关系。它允许一个模型引用另一个模型的实例。在评论功能中,如果我们想保存发表评论的用户的用户名,可以使用ForeignKey字段来建立与用户模型的关联。

然而,当尝试保存发表评论的用户的用户名时出现问题,可能是由于以下原因之一:

  1. 未正确定义ForeignKey字段:在评论模型中,需要定义一个ForeignKey字段来引用用户模型。确保ForeignKey字段的参数包括要关联的模型和相关的选项,例如related_name等。
  2. 用户模型未正确定义:如果用户模型未正确定义或缺少必要的字段,可能会导致保存评论时出现问题。确保用户模型中包含用户名字段,并且该字段具有正确的数据类型和选项。
  3. 保存评论时的逻辑错误:在保存评论时,可能存在逻辑错误导致无法正确保存发表评论的用户的用户名。请检查保存评论的视图函数或方法,确保正确获取和设置用户的用户名。

解决这个问题的方法包括:

  1. 检查ForeignKey字段的定义,确保正确引用用户模型,并设置相关选项。
  2. 检查用户模型的定义,确保包含用户名字段,并且该字段具有正确的数据类型和选项。
  3. 检查保存评论时的逻辑,确保正确获取和设置用户的用户名。

以下是一些腾讯云相关产品和产品介绍链接地址,可以帮助解决云计算中的一些问题:

  1. 云服务器(Elastic Cloud Server):提供可扩展的计算能力,适用于各种应用场景。了解更多:https://cloud.tencent.com/product/cvm
  2. 云数据库 MySQL 版(TencentDB for MySQL):高性能、可扩展的云数据库服务,适用于各种规模的应用。了解更多:https://cloud.tencent.com/product/cdb_mysql
  3. 人工智能平台(AI Lab):提供丰富的人工智能开发工具和服务,帮助开发者构建智能化应用。了解更多:https://cloud.tencent.com/product/ailab

请注意,以上链接仅为示例,具体的产品选择应根据实际需求和情况进行评估和选择。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

django评论系统及多级评论

设计评论数据库模型 用户评论数据必须被存储到数据库里,以便其他用户访问 Django 能从数据库取回这些数据然后展示给访问用户,因此我们需要为评论设计数据库模型,这设计文章、分类、标签数据库模型是一样...auto_now_add 作用是,当评论数据保存到数据库,自动把 created_time 值指定为当前时间。...created_time 记录用户发表评论时间,我们肯定不希望用户发表评论还得自己手动填写评论发表时间,这个时间应该自动生成。 创建了数据库模型就要迁移数据库,迁移数据库命令也在前面讲过。...表单是用来收集并向服务器提交用户输入数据。考虑用户在我们博客网站上发表评论过程。...当用户想要发表评论,他找到我们给他展示一个评论表单(我们已经看到在文章详情页底部就有一个评论表单,你将看到表单呈现给我们样子),然后根据表单要求填写相应数据。

6.8K61

评论

设计评论数据库模型 用户评论数据必须被存储到数据库里,以便其他用户访问 Django 能从数据库取回这些数据然后展示给访问用户,因此我们需要为评论设计数据库模型,这设计文章、分类、标签数据库模型是一样...auto_now_add 作用是,当评论数据保存到数据库,自动把 created_time 值指定为当前时间。...created_time 记录用户发表评论时间,我们肯定不希望用户发表评论还得自己手动填写评论发表时间,这个时间应该自动生成。 创建了数据库模型就要迁移数据库,迁移数据库命令也在前面讲过。...表单是用来收集并向服务器提交用户输入数据。考虑用户在我们博客网站上发表评论过程。...当用户想要发表评论,他找到我们给他展示一个评论表单(我们已经看到在文章详情页底部就有一个评论表单,你将看到表单呈现给我们样子),然后根据表单要求填写相应数据。

3.1K60

第 14 篇:交流桥梁“评论功能”—— HelloDjango 系列教程

name = 'comments' verbose_name = '评论' 设计评论数据库模型 用户评论数据必须被存储到数据库里,以便其他用户访问 django 能从数据库取回这些数据然后展示给访问用户...表单是用来收集并向服务器提交用户输入数据。考虑用户在我们博客网站上发表评论过程。...当用户想要发表评论,他找到我们给他展示一个评论表单(我们已经看到在文章详情页底部就有一个评论表单,你将看到表单呈现给我们样子),然后根据表单要求填写相应数据。...,首先尝试输入非法格式数据,例如将邮箱输入为 xxx@xxx,那么评论视图在校验表单数据合法性,发现邮箱格式不符,就会渲染 preview 页面,展示表单中错误,将邮箱修改为正确格式后,再次点击发表...Comment Post 是通过 ForeignKey 关联,回顾一下我们当初获取某个分类 cate 下全部文章代码:Post.objects.filter(category=cate)。

1.6K20

使用 Django + Vue.js 开发个人博客网站(完整版附源码)—— Python-课程设计-期末项目

用户可以查看所有人写博客,同时可以评论博客,博客展示与评论展示都使用了 分页 功能; 用户查看博客次数记录为 浏览量 ,用户浏览数目记录为 评论数,根据这两项系统 自动推荐 热度比较高文章...3.2 数据库设计 主要涉及四个实体: 文章:用户评论:分类 他们之间 关系 如下: 一个文章对应一个分类,而一个分类可以有多篇文章,所以他们之间关系是多对一; 一个用户可以发布多篇文章,同时可以发表多个评论...,而每一个评论只对应于一个用户,每一篇文章只属于一个用户,所以用户与文章、评论之间是一对多; 有了实体关系,下面用 ER 图表示一下: ?...因为我们集成了 Django 自带一个实体类 AbstractUser ,这个是实体类为我们提供了用户名、姓名、邮箱地址等通用信息,所以我们就不用单独指定了。...# 评论文章 article = models.ForeignKey(Article, on_delete=models.SET_NULL, null=True) # 发表评论用户

5K30

Django搭建blog网站(二)

.设计评论数据库模型  用户评论数据必须被存储到数据库里,以便其他用户访问 Django 能从数据库取回这些数据然后展示给访问用户,因此我们需要为评论设计数据库模型,这设计文章、分类、标签数据库模型是一样...(个人网站),用户发表内容将存放在 text 字段里,created_time 记录评论时间。...auto_now_add 作用是,当评论数据保存到数据库,自动把 created_time 值指定为当前时间。...created_time 记录用户发表评论时间,我们肯定不希望用户发表评论还得自己手动填写评论发表时间,这个时间应该自动生成。...Comment Post 是通过 ForeignKey 关联,回顾一下我们当初获取某个分类 cate 下全部文章代码:Post.objects.filter(category=cate)。

4.5K100

零基础使用Django2.0.1打造在线教育网站(八):数据库字段定义(下)

; 2、用户课程评论信息记录; 3、用户用于收藏公开课, 授课讲师, 授课机构以及用户消息提醒记录; 4、用户个人中心里面我课程说明,用户课程之间学习信息记录; 5、用户咨询消息记录等。...class CourseComments(models.Model): # 前面知道一个用户发表多个课程评论,所以在课程评论表中将用户设置为外键。...# 此处user其实就是一个用来告诉我们这个课程评论属于哪个用户字段 user = models.ForeignKey(UserProfile, on_delete=models.CASCADE..., verbose_name="用户名") # 前面知道一门课程具有多个课程评论,所以在课程评论表中将课程设置为外键。..., verbose_name='用户名') # 前面知道一门课程可以有多个课程信息,所以在用户课程表中将课程设置为外键。

83820

博客将 Django 1.11+ 升级到 Django 2.2+ 遇到问题及规避方法

之前就有人一直催我把博客 Django 升级到 Django 2.0 以上,但是我一直懒得升级,因为我早就看过 Django 2.x 版本 1.11.x 版本,其实没有太多不同,所以没有找到需要升级必要...因为这个库是支持 Python3 ,而且是官方推荐库,可以避免出现问题。..., verbose_name='作者', on_delete=models.PROTECT) # 当删除有文章作者引发错误 category = models.ForeignKey(Category...=models.SET_NULL) # 当工具分类删除后把分类设置为空 # class Comment(models.Model): # 删除评论人或者父评论时候同时删除评论 author = models.ForeignKey...) parent = models.ForeignKey('self', verbose_name='父评论', related_name='%(class)s_child_comments', blank

90020

Python:Django搭建博客

简介 学完 Django2.x 可以搭建一个个人博客练练手 教程 创建项目 通过 pycharm 创建博客项目与虚拟环境 修改相关设置 允许任何域名 在开发测试时候可以将这里填为 *,后期部署上线后修改为指定域名即可...= [ { # 选择我们模板引擎,刚刚用pycharm创建已选择django自带模板引擎 'BACKEND': 'django.template.backends.django.DjangoTemplates...@163.com Password: Password (again): 密码跟 用户名 太相似了。...Django 安装成功, 访问 Django-admin 界面, 在浏览器中输入 127.0.0.1:8000/admin,看到 Django 管理,需要输入用户名密码,输入用户名密码后可以跳转到 Django...字段 类型 备注 id PrimaryKey 主键 name CharField 用户名 password CharField 密码 评论表 字段

53300

django开发个人简易Blog——数据模型

之后按照提示输入用户名及密码即可。...输入刚刚创建超级用户用户名密码,点击login按钮,即来到如下管理界面: ? 通过这个管理界面,可以方便用户用户进行管理,并且有详细日志记录。...到目前为止,一个可以验证用户权限并且可管理用户用户后台管理系统就可以完美的运行了,简直太方便了。好了,下面开始添加与本系统相关数据模型。...数据模型设计: 由于这只是一个简单博客,并且功能有限,所以,数据模型也是比较简单,仅包括文章表、分类表及评论表这三个表,至于用户验证部分,使用django自带用户表。...接下来,启动网站,访问http://127.0.0.1:1989/admin/ 输入用户名密码,进入管理页面,咦,什么情况,说好安装什么app就会出现对应管理功能呢,怎么依然只有Auth这个app

86480

django自关联,auth模块

to_主表名_id 5.当我们通过 from_主表名_id 相关联对象查与 to_主表名_id相关联对象,可以直接通过 '主表对象.关系表(从表)' 查询 # views.py中 # 查询jojo...3,4); ''' 6.当我们 通过 to_主表名_id相关联对象查 from_主表名_id 相关联对象,则需要通过 '主表对象.关系表_set' 进行查询 # views.py中 # 查询...1,2); ''' 二、auth模块 1.auth简单使用 1.执行数据库迁移那两条命令,即使我们没有建表,django是不是也会创建好多张表?...myuser = auth.authenticate(request,username=name,password=psw) # 如果auth_user表中有这条记录,则返回一个user对象(一般就是用户名...auth.login(request,myuser) # 会产生一个user对象,可以在任何视图函数中调用 """ 给当前成功登陆用户保存登陆状态

1K20

1.4 Django基础篇--数据库模型设计

前言 从上一节我们知道home应用需要涉及文章,分类标签三个部分,其实这就是个人博客系统最核心功能:发表文章。下面我们分析一下数据库该如何设计?...3.文章存储是相对复杂,从项目分析图1.4可以看到,文章数据表需要存储文章标题,内容,创建时间,修改时间,摘要,分类,标签,作者,浏览量评论数,要存储数据有几个需要注意:分类,标签评论数。...首先在设计数据表不考虑评论数,因为评论我们已经作为一个独立应用,而且这评论数据表与文章数据表关系有关联,之后在讲评论功能时会说明。...author表示文章作者,大家会发现我们使用了外键,这是因为User是Django内置数据模型,从django.contrib.auth.models中导入,专门用来负责用户信息处理,本质上User...'USER':'root',#用户名 'PASSWORD':'',#密码为空 'HOST':'127.0.0.1',#主机 'PORT':'3308'#端口 } } 大家根据自己

1.2K30

python3 django整理(八) Django 创建admin用户,并登陆操作添加博文

创建admin用户并登陆 基本步骤 ? 浏览器地址栏输入:http://127.0.0.1:8000/admin ? 进行登陆。...之后按照下面链接进行app中数据库表更新 python3 django整理(六)配置数据库(mysql) 上面的输入刚才新建用户名密码 ? 完整过程 完整详细过程如下: ?...,django所需要 在mysql新增数据库如下 ?...参考文献:文献1 Django引入外部数据库 Django引入外部数据库还是比较方便,步骤如下 : 创建一个项目,修改seting文件,在setting里面设置你要连接数据库类型连接名称,地址之类...,创建新项目的时候一致 运行下面代码可以自动生成models模型文件 Python manage.py inspectdb 这样就可以在控制台命令行中看到数据库模型文件了 把模型文件导入到

1.5K40

创建 Django 博客数据库模型

我们把写好文章永久地保存在数据库里,当用户访问我们博客Django 就去数据库里把这些数据取出来展现给用户。 博客文章应该含有标题、正文、作者、发表时间等数据。...数据库存储数据其实就是表格形式,例如存储博客文章数据库表长这个样子: 文章 id 标题 正文 发表时间 分类 标签 1 title 1 text 1 2016-12-23 Django Django...# django.contrib.auth 是 Django 内置应用,专门用于处理网站用户注册、登录等流程,User 是 Django 为我们已经写好用户模型。...理解多对一多对多两种关联关系 我们分别使用了两种关联数据库表形式:ForeignKey ManyToManyField。 ForeignKey ForeignKey 表明一种一对多关联关系。...假如你对多对一关系多对多关系还存在一些困惑,强烈建议阅读官方文档对这两种关系说明以及更多官方例子以加深理解: Django ForeignKey 简介 Django ForeignKey 详细示例

1.3K60

36·Python项目-博客(前后不分离)

-有同学分析,要再建一张表,跟commit是一对多关系(不好) -如何用这一个表,表示出根评论评论?...当填写完用户名时候,鼠标移动到下一个框时候,用户名框就失去焦点了,那么在失去焦点时候,瞬间显示出,这个字段校验错误信息。 \d+)', views.user_blog), ## 路由三合一(分类,标签,随笔) # 分组分出三个,(用户名,category|tag|archive中一个,可能是分类...路由三合一(分类,标签,随笔) # 分组分出三个,(用户名,category|tag|archive中一个,可能是分类id tagid或者时间) url(r'^(?...P\d+)', views.update_article), ## 路由三合一(分类,标签,随笔) # 分组分出三个,(用户名,category|tag|archive中一个

77010

Django+xadmin打造在线教育平台(一)

热门课程推荐,课程分页。 点击课程–> 课程详情页中对课程进行收藏,取消收藏。富文本展示课程内容。 点击开始学习–> 课程章节信息,课程评论信息。课程资源下载链接。...点击讲师详情页面–> 对讲师进行收藏分享,以及讲师全部课程。 导航栏: 授课机构有分页,排序筛选功能。 机构列表页右侧有快速提交我要学习表单。...1.2.创建工程 创建工程 django-admin startproject MxOnline 然后开始项目的开发 二、models设计  项目的开发都是从models设计开始,后台管理前端渲染无非就是对数据库增删改查...username 用户名字段不要随便改动, email 邮箱, is_staff 表示是否是员工(后台管理会用到)。 is_active 用户是否是激活状态, date_joined 注册时间。...用户评论 UserCourse 用户学习课程 UserFavorite 用户收藏 (1)UserAsk  代码如下: class UserAsk(models.Model): name = models.CharField

5.6K121
领券