0
私は単に私の場合、すべての画像がproject. project.id = images.model_key
にリンクされたサブループを持つループを作成したいと考えています。モデルから関連データを取得するにはどうすればよいですか?
私はうまくいきませんでした。
function index()
{
$projects = Project::all();
foreach($projects as $project)
{
echo "<pre>";
print_r($project->images);
echo "</pre>";
}
}
私はプロジェクトモデルです。
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
use App\ProjectCategoryProject;
use App\Models\Image;
class Project extends Model
{
public $fillable = ['id', 'title','description', 'home_page', 'display'];
public function categories()
{
return $this->hasMany('App\ProjectCategoryProject');
}
public function images()
{
return $this->hasMany('App\Models\Image');
}
...
は、だから、私はモデルproject.id = images.model_key
が、どのように指定する必要が推測しますか?
エラー:
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'images.project_id' in 'where clause' (SQL: select * from `images` where `images`.`project_id` = 4 and `images`.`project_id` is not null)
Thanks, sorry i'm guetting confused.
このエラーはあなたが必要とするすべてを示しています。あなたは 'images'テーブルに' project_id'カラムを持っていますか? –
いいえ私はproject_idと等しいmodel_key列を持っていません。 – CREAZPRO
@CREAZPROこれは同じですが、画像テーブルにproject_idという名前を付ける必要があります –