我无法弄清楚为什么我的数据没有发布并存储在我的数据库中。我已将资源路由用于另一种形式,并且工作正常,但由于某种原因,它无法工作。单击“提交”似乎只是刷新页面,没有任何错误!
所以我有一个从数据库获取锻炼例程的表单,提交后我希望在我的数据库表中创建一个新的锻炼“ session ”(称为“锻炼”)。形式是这样的:
{{ Form::open(array('url' => '/')) }}
<div class="form-group">
{{ Form::text('workout_name', Input::old('workout_name'), array('class' => 'form-control', 'placeholder' => 'Session Name')) }}
</div>
<div class="form-group">
{{ Form::select('routines', $routine_names, null, array('class' => 'form-control')) }}
</div>
{{ Form::submit('Select Routine', array('class' => 'btn btn-success pull-right')) }}
{{ Form::close() }}
在我的 HomeController 中我有这个:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use App\Routine;
use App\Workout;
class HomeController extends Controller
{
public function index()
{
$routines = Routine::all();
$routine_names = Routine::lists('routine_name');
return view('workout')->with(array('routines'=>$routines, 'routine_names'=>$routine_names));
}
public function store()
{
$workout = new Workout;
$workout->workout_name = Input::get('workout_name');
$workout->save();
}
}
我为锻炼创建了一个模型,此页面的路线如下:
Route::resource('/', 'HomeController');
我不知道我哪里出了问题。我的 Controller 中的索引方法正在工作,因为它返回带有我需要的数据的正确 View 。我认为该表单看起来也不错,因为我正在发布到同一页面,但提交似乎没有执行我在 HomeController 的 store 方法中的代码。
如有任何帮助,我们将不胜感激!
谢谢:)
最佳答案
更改您的路线声明:
Route::resource('/', 'HomeController');
对于这样的事情:
Route::resource('/workout', 'WorkoutController');
关于laravel - 存储方法无法使用资源路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35268867/