Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 13.03.2014 13:16:24

Автоматическое заполнение поля дочерней таблицы

Есть две модели:

class User extends Eloquent {

	protected function posts()
	{
		return $this->hasMany('Post');
	}
}

и

class Post extends Eloquent {
	protected function user()
	{
		return $this->belongsTo('User');
	}
}

пытаюсь создать пост следующим образом:

$post = new Post;
$post->title = Input::get('title');
$post->text = Input::get('text');
Auth::user()->posts()->save($post);

получаю следующую ошибку:
BadMethodCallException
Call to undefined method Illuminate\Database\Query\Builder::posts()

Что не так?

Не в сети

#2 13.03.2014 15:16:36

Re: Автоматическое заполнение поля дочерней таблицы

Auth::user() точно возвращает переопределённый User, а не стандартный, идущий с Laravel?

Не в сети

#3 13.03.2014 16:32:27

Re: Автоматическое заполнение поля дочерней таблицы

Я просто добавил данный код в уже существующий User.

Не в сети

#4 13.03.2014 16:34:01

Re: Автоматическое заполнение поля дочерней таблицы

Ты пытаешься вызвать закрытый метод извне класса.

  1. PHPprotected function posts()

Не в сети

#5 13.03.2014 16:37:37

Re: Автоматическое заполнение поля дочерней таблицы

Действительно lol, спасибо

Не в сети

Подвал раздела