Laravel Eloquent模型为一对多关系返回null

时间:2016-11-29 02:44:26

标签: php mysql laravel eloquent

我不确定这里发生了什么。尽管在数据库中有信息,我仍然得到null的返回。

刺激模型

    <?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Stimuli extends Model
{
  protected $table = 'stimuli';
  public $timestamps = false;
    /**
     * Get the details associated with the stimulus
     */
    public function info()
    {
     return $this->hasMany('App\StimuliInfo', 'attribute', 'value');   
    }
}

刺激信息模型

    <?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class StimuliInfo extends Model
{
    /**
     * Get the stimuli associated with the detailss
     */
  protected $table = 'stimuli_info';
  public $timestamps = false;
    public function info()
    {
        return $this->belongsTo(Stimuli::class);
    }
}

控制器

<?php

namespace App\Http\Controllers;

use App\User;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\DB;
use App;

use Illuminate\Http\Requests;

class Labels extends Controller
{
  public function index()
  {

  }

  public function objects()
  {
    $stimulus = App\Stimuli::with('info')->get();
     foreach ($stimulus as $stim)
    {
      $stimuli[] = $stim->stimulus_id;
    }
   return $stimuli;

    shuffle($stimuli);

    return view('label/objects')->with(compact('stimuli'));

  }


}

好的,这是一个测试控制器。出于某种原因,我得到每个数据点的空输出。这是奇怪的,因为我可以在数据库中看到有数据不是空的。

我想知道我是否在模型中做了一些不正确输出这些数据的东西。

非常感谢任何帮助 - 我对此过程感到茫然

0 个答案:

没有答案