Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 获取数组中对象的编号,但不获取对象本身。-拉威尔5.2_Php_Arrays_Laravel_Object - Fatal编程技术网

Php 获取数组中对象的编号,但不获取对象本身。-拉威尔5.2

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

我的问题就在这里

在我的getIndex方法中,我列出了一个表中的对象数组,然后在我的postIndex中,当我试图发布它们时,结果是我发布了数组中对象的编号,而不是对象本身。为什么会这样,有人

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')