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

时间:2017-07-03 11:58:07

标签: php mysql yii

我有两个表:帖子和评论。我在/post/view.php中渲染了/comment/_form.php。但是,当我尝试添加注释时,我收到以下错误:

"正在执行的SQL是:INSERT INTO commentbodyuser_idcreated_atupdated_at)VALUES(&#39 ;第一篇博文',3,' 1499082140',' 1499082140')"

我已使用:

声明了外部约束

" ALTER TABLE注释ADD CONSTRAINT fk_comment_post_id FOREIGN KEY(post_id)REFERENCES post(id);"

我知道问题来自于现场&post; id'没被接走。我的问题是我可以在评论控制器中查找当前的帖子ID然后填充数据库?我是Yii和软件开发部门的新手,如果我错过任何信息或在错误的地方发布信息等,请向我道歉。

任何帮助/资源将不胜感激。

2 个答案:

答案 0 :(得分:0)

你可以试试这个! 你必须要给post_id,这应该是有效的(即它应该在post表中作为id出现)

Get-ChildItem 'C:\Program Files*' -Recurse -Filter '*setup bootstrap*' -EA silentlycontinue|
  Where-Object PSIsContainer|
    ForEach-Object {
      Get-ChildItem $_.FullName -Filter 'summary.txt' | 
        Select-String -Pattern '^Final result:\s+(.+)$'|
          ForEach-Object {$_.matches.captures.value}
    }

这就是它如何与sql一起工作我不知道如果我犯了任何错误,我很抱歉。

答案 1 :(得分:0)

在制作关联表之后POST和COMMENT重新生成模型POST和COMMENT。

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

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