2013-08-18 2 views
0

Я делаю что-то неправильно, чтобы иметь доступ к методам, хранящимся в модели в представлении. Например. Моя модель пользователя имеет метод, который выглядит какLaravel 4 Model Methods access

public function isCustomer(){ 
     if (isset($this->customer_id)) 
     return true; 
     else return false; 
    } 

Когда я пытаюсь получить доступ к этому с точки зрения я в конечном итоге с Call to a member function getResults() on a non-object.

Посмотреть код что-то вроде

@if($user->isCustomer) 
Something 
@endif 

ли модель ТОЛЬКО для связей между базами данных между моделями или я могу также хранить свои собственные функции класса?

Функция i, указанная в списке, является одной из основных. У меня есть довольно много более сложных функций, которые я бы хотел запустить из моего класса User, но я не уверен, как это сделать, поскольку каждый раз я получаю одну и ту же ошибку. Должны ли они храниться в контроллере?

ответ

2

Вы можете хранить функции класса там. На первый взгляд это выглядит как ваш недостающий() на isCustomer. Если бы это был я, я бы сохранил это в контроллере, например:

$customer = $user->isCustomer(); 

затем передать это на вид.

+0

Такое простое решение. Благодаря! –

+0

Спасибо, у меня была эта же проблема, когда я назвал $ user-> save; вместо $ user-> save(). –