我正在使用Laravel Collective和Laravel 5.2 ......我对此有点新意,所以如果有人可以提供帮助,我将不胜感激。 我想在我的视图中填充数据, 这是我的控制器:
<?php
namespace App\Http\Controllers\Admin;
use Illuminate\Http\Request;
use App\Http\Requests\SaveProfileRequest;
use App\Http\Requests;
use App\Clas;
use App\Profile;
use App\Http\Controllers\Controller;
class ClassesController extends Controller
{
public function getIndex() {
return view('admin.classes.list', [
'classes' => Clas::get()
]);
}
public function postIndex(Request $request) {
$class = Clas::create([
'profile_id'=>
'name' => $request ->input('class-name'),
]);
if($class->id) {
return redirect()->back()->with('message', [
'type'=> 'success',
'message' => 'Успешно записан нов клас!'
]);
}
return redirect()->back()->with('message', [
'type'=> 'danger',
'message' => 'Класът не е записан!'
]);
}
}
在我的视图中我有这个
<div class="panel-body">
{!! Form::open(['method' => 'post', 'class' => 'form-horizontal']) !!}
<div class="form-group">
{!! Form::label('class-name','Клас:', ['class' => 'control-label col-md-3']) !!}
<div class="col-md-6">
{!! Form::text('class-name', null,['class' => 'form-control', 'placeholder' => 'например: 8а' ]) !!}
</div>
</div>
<div class="form-group">
{!! Form::label('profile-name','Избери профил:', ['class' => 'control-label col-md-3']) !!}
<div class="col-md-6">
{!! Form::select('profile-name') !!}
</div>
</div>
<div align="center">
{!! Form::submit('Запиши', ['class' => 'btn btn-default']) !!}
</div>
{!! Form::close() !!}
</div>
我的问题是如何传递数据?我应该在控制器和视图中写什么来连接它们?
答案 0 :(得分:0)
查看https://laravel.com/docs/5.0/views#basic-usage
您可以通过调用函数view( string $script, array $viewVariables )
答案 1 :(得分:0)
关于你的评论。
这会向视图返回一个列表(数组):
EDITED
public function getIndex() {
return view('admin.classes.list', [
//'classes' => Clas::get() //returns object, profile
'profiles' => Profile::lists('name', 'id'); //returns array
]);
}
使用profile_id和name列表填充选择菜单
注意:我将profile-name
更改为profile_id
<div class="form-group">
{!! Form::label('profile_id','Избери профил:', ['class' => 'control-label col-md-3']) !!}
<div class="col-md-6">
{!! Form::select('profile_id', $profiles) !!}
</div>
</div>
然后你的postIndex:
public function postIndex(Request $request) {
$class = Clas::create([
'profile_id'=> $request->get('profile_id'),
'name' => $request ->input('class-name'),
]);
if($class->id) {
return redirect()->back()->with('message', [
'type'=> 'success',
'message' => 'Успешно записан нов клас!'
]);
}
return redirect()->back()->with('message', [
'type'=> 'danger',
'message' => 'Класът не е записан!'
]);
}