0

问题

在 Laravel 4 中,假设我有 2 个模型Post并且Comment具有一对多的关系。我希望能够做到...

Post::create(['post_title' => 'foo',
               'comment' => ['text' => 'Some comment']);

...并为此创建帖子记录以及新的评论记录。这是我的尝试:-

我的尝试

class Post extends Model {

  // Make all field mutable
  public static $unguarded = true;

  // Create relationship
  public function comments() {
      return $this->hasMany('Comment');
  }

  // Setter for comment
  public function setComment($comment) {
      $this->comments()->create($comment);
      return FALSE;
  }
}

错误

但我得到了错误: -

Column not found: 1054 Unknown column 'comment' in 'field list'

是否有可能让 Laravel 不寻找该领域?我尝试FALSE从二传手返回,但这似乎不起作用。

非常感谢任何帮助。

4

1 回答 1

1

我还没有测试过——但这应该可以;

class Post extends Model {

  public function comments() {
      return $this->hasMany('Comment');
  }

  public function createPostAndComment($post, $comment)
  {
      if ($this->create($post))
      {
           $this->comments()->save($comment);
      }
  }
}

你可以在这里阅读更多

于 2013-08-22T01:34:45.573 回答