2016-12-05 58 views
1

我的问题是下一个:Laravel种子问题

我已经做了一些种子,并试图获得主键到另一个表/种子。

这里是我的代码有问题:

$factory->define(App\Movimento::class,function(Faker\Generator $faker){ 

    $Transportador=App\Transportador::pluck('TransportadorId'); 

    $array =[ 

    'MovimentoId' => $faker->randomNumber, 

    'Data'   => $faker->date, 

    'Destino'  => $faker->word, 

    'EMExp'   => $faker->word, 

    'Transp'  => $faker->randomNumber($Transportador) 

    ]; 

    return $array; 

}); 

所以“运输”是一个外键,我想相同的密钥具有与其他种子“TransportadorId”。

下面是代码是如何从错误中明确:

$factory->define(App\Transportador::class,function(Faker\Generator $faker){ 

    $nbDigits='3'; 

    $redDigits='9'; 

    $array =[ 

    'TransportadorId' => $faker->randomNumber($nbDigits), 

    'Nome'    => $faker->text, 

    'Contribuinte'  => $faker->randomNumber($redDigits) 

    ]; 

    return $array; 

}); 

P.S->我为我的英语不好对不起。

回答

2

你或许可以这样做:

$factory->define(App\Movimento::class,function(Faker\Generator $faker){ 

    $Transportadores = App\Transportador::all(); 

    $array =[ 

    'MovimentoId' => $faker->randomNumber, 

    'Data'   => $faker->date, 

    'Destino'  => $faker->word, 

    'EMExp'   => $faker->word, 

    'Transp'  => $Transportadores->random()->TransportadorId 

    ]; 

    return $array; 

}); 
+0

安东尼奥·卡洛斯·里贝罗非常感谢已经工作 – Vitor