現在、ユーザーがアイテムを作成できるようにするリンクをインデックス ページに作成しようとしています。私のroutes.phpは次のようになります
Route::controller('items', 'ItemController');
私のItemControllerは次のようになります
class ItemController extends BaseController
{
// create variable
protected $item;
// create constructor
public function __construct(Item $item)
{
$this->item = $item;
}
public function getIndex()
{
// return all the items
$items = $this->item->all();
return View::make('items.index', compact('items'));
}
public function getCreate()
{
return View::make('items.create');
}
public function postStore()
{
$input = Input::all();
// checks the input with the validator rules from the Item model
$v = Validator::make($input, Item::$rules);
if ($v->passes())
{
$this->items->create($input);
return Redirect::route('items.index');
}
return Redirect::route('items.create');
}
}
getIndex() を単に index() に変更しようとしましたが、コントローラーメソッドが見つかりません。そういうわけで、私は getIndex() を使用しています。
作成コントローラーを正しく設定したと思いますが、items/create url に移動すると、
そのようなルートが存在しないため、名前付きルート「items.store」の URL を生成できません。
エラー。postStore() の代わりに store() と getStore() だけを使用しようとしましたが、同じエラーが発生し続けます。
誰が問題が何であるか知っていますか?URL が生成されない理由がわかりません。