Я не новичок в MVC, но я только начинаю с Laravel. В ASP.NET MVC у нас есть ViewModels, который в основном является объектом данных, который мы можем передать представлению. Затем представление может использовать ViewModel любым способом, каким пожелает.
Есть ли такая вещь в Ларавеле? Я хочу создать ViewModel, которую я могу передать своему контактному представлению, и сделать так, чтобы он создавал каркас формы вокруг него!
Что у меня сейчас есть:
ROUTE
Route::get('/contact', array('as' => 'contact', 'uses' => 'HomeController@contact'));
Route::post('/contact', array('as' => 'contact', 'uses' => 'HomeController@postContact'));
КОНТРОЛЛЕР
<?php
class HomeController extends BaseController {
public function contact()
{
return View::make('contact');
}
public function postContact()
{
$formData = Input::all();
return View::make('contact');
}
}
Кроме того, вы предвидите что-нибудь не так с моими маршрутами и кодом контроллера? В ASP.NET MVC у нас может быть маршрут с точно таким же именем, если глаголы разные (POST / GET).
Моя контактная форма имеет 3 текстовых поля (имя, адрес электронной почты и тема) и одно текстовое поле (сообщение).
Вероятно, вы говорите о view/model presenter
который является еще одним слоем между вашими model
а также view
и в этом случае вы можете создавать свои собственные или использовать существующие пакеты:
Также прочитайте Эта статья чтобы получить четкое представление о presenter
,
Других решений пока нет …