获取数组中对象的编号,但不是对象本身。 - Laravel 5.2

时间:2016-02-25 14:00:40

标签: php arrays laravel object

我的查询中存在此问题。

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

#include <stdlib.h>
#include <stdio.h>
#include <mpi.h>

int main(int argc, char *argv[])
{
        int rank,size;

        MPI_Init(&argc, &argv);
        MPI_Comm_rank(MPI_COMM_WORLD, &rank);
        MPI_Comm_size(MPI_COMM_WORLD, &size);



        if(2!=size) MPI_Abort(MPI_COMM_WORLD, 1);

    int* buf1 = (int*)malloc(sizeof(int) * 10000);
    int* buf2 = (int*)malloc(sizeof(int) * 10000);

        buf1[0] = 1;
        buf2[0] = 1;
        if (0==rank) {
            MPI_Bcast(buf1,10000,MPI_INT,0,MPI_COMM_WORLD);
            MPI_Bcast(buf2,10000,MPI_INT,1,MPI_COMM_WORLD);
            printf("proc 0 done\n");
        }
        if (1==rank) {
            MPI_Bcast(buf2,10000,MPI_INT,1,MPI_COMM_WORLD);
            MPI_Bcast(buf1,10000,MPI_INT,0,MPI_COMM_WORLD);
            printf("proc 1 done\n");
        }
        MPI_Finalize();
}

表格:

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();

2 个答案:

答案 0 :(得分:2)

这可能适用于getIndex():

return view('educator.account.account', [
    'user' => $user,
    'class'=> ClassSubject::lists('class_id', 'YOUR_HUMAN_READABLE_FIELD')->where('teacher_id', $user->id)->get(),
    'subject'=> ClassSubject::lists('subject_id', 'YOUR_HUMAN_READABLE_FIELD')->where('teacher_id', $user->id)->get()',
]);

让我知道它是否有效。

修改

问题已解决,这就是诀窍:

DB::table('class_subject')->where('teacher_id', $user->id)->pluck('id', 'name');

答案 1 :(得分:0)

当您只传递一个参数时,您将收到一个数组,其值设置为您传递给onBindViewHolder(ViewHolder, int)方法的列。

但是lists使用数组Form::select作为选项值,使用keys作为选项的显示名称。

因此,请使用values方法。

lists

在laravel 5.2中,不推荐使用list方法,并考虑使用ClassSubject::lists('displayName', 'value') 方法,而不是具有相同签名的方法。