Ich habe einige Modelle gehören zu Activity Model.laravel 4 hasOne/hasMany/belongsTo funktioniert nicht
in meinem Activity.php hatte ich
<?php
class Activity extends \Eloquent {
protected $fillable = [];
public function activity_car_nums()
{
return $this->hasMany('ActivityCarNum');
}
public function newables()
{
return $this->hasMany('Newable');
}
public function serial_codes()
{
return $this->hasMany('SerialCode');
}
public function applys()
{
return $this->hasMany('Apply');
}
}
und in SerialCode.php hatte ich
<?php
class SerialCode extends \Eloquent {
protected $fillable = ['code'];
public function activity()
{
return $this->belongsTo('Activity');
}
}
und in meinem Controller, wenn ich
$serial_codes = [];
while(count($serial_codes) < $serial_code_total)
{
$code = substr(md5(uniqid(rand(), true)),0,5);
$serial_code = new SerialCode(['code' => $code]);
if(!in_array($serial_code, $serial_codes))
{
$serial_codes[] = $serial_code;
}
}
$activity->serial_codes()->saveMany($serial_codes);
schrieb er arbeitet .
Aber wenn es wendet sich an
//this can get activity object
$activity = Activity::find($id);
//this can get the serial codes of the object above.
$serial_codes = SerialCode::whereActivityId($id)->get();
//this don't work, it returns null
$serial_codes = $activity->serial_codes;
denn ich weiß wirklich nicht, warum ...
jemand mir bitte helfen kann, und sorry für mein schlechtes Englisch. Danke. (Wenn Sie einen Code benötigen sonst bitte sagen Sie mir.)
Ich habe andere 2 Modelle, die als hasOne assoziieren und gehört zu Beziehung, und ich kann nichts über die Abfrage von Orm bekommen, auch wenn auch Daten drin sind. –
Können Sie SerialCode- und Aktivitätsmodelle veröffentlichen? – Laerte
@Laerte I aktualisiert auf meine Frage :) –