Laravel: привязка модели маршрута и пространство имен

#model #laravel-4 #routing #namespaces

#Модель #laravel-4 #маршруты #пространства имен

Вопрос:

Я успешно использую следующие коды для автоматической маршрутизации HTTP-параметров к модели в Laravel:

 Route::model('user', 'User', function()
{
    throw new AccountNotFoundException('Account does not exists.');
});
  

Недавно я начал использовать пространства имен для своих классов, и вот тут-то и возникла проблема.

До сих пор я пробовал это безрезультатно:

 Route::model('user', 'PackageNameUserRepositoryUser', ....blahh....)
  

Вопрос: Как мне указать пространство имен в модельных маршрутах?

Ответ №1:

Анализируя само сообщение об ошибке, я случайно решил проблему. По-видимому, 2-й параметр метода Route::model() принимает либо строковое имя класса, либо объект самой модели:

 Route::model('user', new PackageNameUserRepositoryUser, function()
{
    throw new AccountNotFoundException('Account does not exists.');
});
  

где:

 new PackageNameUserRepositoryUser
  

является экземпляром модели пространства имен.