BlackCat Я бы тебе рекомендовал не делать проверку на то опубликована запись или нет.
Проверки на публикацию лучше выносить в scope метод
Попался на такую проблему на странице всех item'ов (страница с пагинацией). Получается что админу выводит правильно, а обычным посетителям - неправильно (от заданного количества минус неопубликованные).
Исправил так:
$admin = false;
if (\BackendAuth::check()) {
$this->page['admin'] = true;
$admin = true;
}
if ($admin) {
$this->page['items'] = \OctoClub\Tutorial\Models\Item::orderBy('name', 'asc')->paginate($this->property('items'));
}
else {
$this->page['items'] = \OctoClub\Tutorial\Models\Item::where('published', 1)->orderBy('name', 'asc')->paginate($this->property('items'));
}
В твиге проверку на published == 1 убрал. Теперь работает правильно.