Php 获取数组中对象的编号,但不获取对象本身。-拉威尔5.2
我的问题就在这里 在我的getIndex方法中,我列出了一个表中的对象数组,然后在我的postIndex中,当我试图发布它们时,结果是我发布了数组中对象的编号,而不是对象本身。为什么会这样,有人Php 获取数组中对象的编号,但不获取对象本身。-拉威尔5.2,php,arrays,laravel,object,Php,Arrays,Laravel,Object,我的问题就在这里 在我的getIndex方法中,我列出了一个表中的对象数组,然后在我的postIndex中,当我试图发布它们时,结果是我发布了数组中对象的编号,而不是对象本身。为什么会这样,有人 public function getIndex() { $user = Auth::user(); return view('educator.account.account',[ 'user' => $user, 'class'=> C
public function getIndex() {
$user = Auth::user();
return view('educator.account.account',[
'user' => $user,
'class'=> ClassSubject::where('teacher_id','=',$user->id)()->lists('class_id'),
'subject'=> ClassSubject::where('teacher_id','=',$user->id)->lists('subject_id'),
]);
}
public function postIndex(Request $request) {
ClassSubject::where([
['subject_id','=',$request->input('subject')],
['class_id','=',$request->input('class')]
])->get();
表格:
<div class="panel panel-default">
<div class=" panel-heading" id="admin-heading"> Добре дошли!</div>
<div class="panel-body">
<br>
{!! Form::open(['action' => 'Educator\AccountController@postIndex', 'class' => 'form form-vertical' ]) !!}
<div class="form-group col-md-6">
<div class="col-md-4">{!! Form::label('class','Избери клас:') !!}</div>
<div class="col-md-6">{!! Form::select('class', $class, null, ['class'=>'form-control']) !!}</div>
</div>
<div class="form-group col-md-6">
<div class="col-md-5">{!! Form::label('subject','Избери предмет:') !!}</div>
<div class="col-md-6">{!! Form::select('subject', $subject, null, ['class'=>'form-control']) !!}</div>
</div>
<div align="center">
<br>
<br>
{!! Form::submit('Избери', ['class' => 'btn btn-default']) !!}
</div>
{!! Form::close() !!}
</div>
</div>
Добре дошли!
{!!Form::open(['action'=>'教育家\AccountController@postIndex“,”类“=>”形式垂直“])
{!!Form::label('类','зззббббС:')
{!!Form::select('class',$class,null,['class'=>'Form-control'])
{!!Form::label('主题','主题','主题')
{!!表单::选择('subject',$subject,null,['class'=>'Form-control'])
{!!Form::submit('Пзззббб',['class'=>'btn btn default'])
{!!Form::close()!!}
这可能适用于getIndex()中的您:
让我知道它是否有效
编辑
问题已经解决,这就成功了:
DB::table('class_subject')->where('teacher_id', $user->id)->pluck('id', 'name');
当您只传递一个参数时,您将收到一个数组,其值设置为要传递给
lists
方法的列
但是Form::select
使用数组的键
表示选项的值,使用值
表示选项的显示名称
因此,请使用下面的列表
方法
ClassSubject::lists('displayName', 'value')
<P>>强〉在LaaLVIEW 5.2列表方法中被弃用,并考虑使用<代码> PLUK/<代码>方法,它具有相同的签名。< /强> 你能给出你提交的表单的代码吗?所以你的问题是当你提交表单时,你会得到数组的索引ID而不是类主题行的ID?您正在使用的是Laravel版本?@chanafdo问题标题是Laravel 5。2@Dees040我的错,错过了那一部分:(现在我根本没有在下拉列表中获取我的信息。对不起,我忘了添加“->get()”。我已经更新了我的答案。缺少Illumb\Support\Collection::get()@YoannaMurdjeva的参数1。也许你可以尝试添加我的Skype(与我的用户名相同)我将帮助您修复错误,因为这应该是一个“简单”的问题。
ClassSubject::lists('displayName', 'value')