Php Yii2-尝试保存到数据库时出错

Php Yii2-尝试保存到数据库时出错,php,mysql,yii,Php,Mysql,Yii,我有两张表:Post和Comment。我已经在/post/view.php中呈现了/comment/_form.php。但是,当我尝试添加注释时,会出现以下错误: “正在执行的SQL是:插入注释(正文,用户id,在处创建,在处更新)值('First blog post',3,'1499082140',1499082140')” 我已使用以下方法声明了外部约束: “ALTER TABLE comment ADD CONSTRAINT fk_comment_post_id外键(post_id)引用p

我有两张表:Post和Comment。我已经在/post/view.php中呈现了/comment/_form.php。但是,当我尝试添加注释时,会出现以下错误:

“正在执行的SQL是:插入
注释
正文
用户id
处创建,
处更新)值('First blog post',3,'1499082140',1499082140')”

我已使用以下方法声明了外部约束:

“ALTER TABLE comment ADD CONSTRAINT fk_comment_post_id外键(post_id)引用post(id);”

我知道问题出在“post_id”字段没有被拾取。我的问题是,我可以在我的评论控制器中做什么来找到当前的帖子ID,然后填充数据库?我是Yii和软件开发的新手,因此,如果我错过了任何信息或发布在错误的位置等,我深表歉意

如有任何帮助/资源,将不胜感激

你可以试试这个! 您必须提供post_id,并且该id应有效(即,它应作为id显示在post表中)


这就是sql的工作方式我不知道Yi,如果我犯了任何错误,我很抱歉。

在生成相关表后发布和注释重新生成模型发布和注释

如果在makerelation中有错误,请在mysql控制台中使用此代码

SET FOREIGN_KEY_CHECKS=0;
ALTER TABLE comment ADD CONSTRAINT fk_comment_post_id FOREIGN KEY (post_id) REFERENCES post(id);

Hi,用于将查询放入
标记中。谢谢
SET FOREIGN_KEY_CHECKS=0;
ALTER TABLE comment ADD CONSTRAINT fk_comment_post_id FOREIGN KEY (post_id) REFERENCES post(id);