У меня есть 2 таблицы, tn_project
имеет имя ID cv_id_project
и tn_activity
имеет имя ID id
, я хочу, чтобы получить имя проекта, который cv_project_name
, а его id
.Отображаемое имя таблицы, а ее идентификатор Laravel
В основном, когда я нажимаю add activity
я есть select
возможность выбирать, какие project
, что я использую, я смог получить идентификатор выбранного project
, но я хочу его name
(я могу выбрать до 3 project
в одном activity
)
Модель
<?php namespace Activity;
use Illuminate\Database\Eloquent\Model;
class Activity extends Model {
protected $table = 'tn_activity';
public $timestamps = false;
public function projectModel(){
return $this->hasMany('Activity\Project','cv_id_project','id');
}
}
VIEW
@foreach($query as $result)
<td>{{$result->projectModel->cv_project_name}}</td>
@endforeach
Контроллер
public function index(){
return view('landing-page')
->with('title','Landing Page')
->with('query',Activity::with('projectModel')->get())
->with('projects',Project::all());
}
обычно это работа, но я не знаю, что делает его ошибки , а затем произошла эта ошибка
Undefined property: Illuminate\Database\Eloquent\Collection::$cv_project_name (View: C:\xampp\htdocs\PKL\netxcel-2-backup2\resources\views\landing-page.blade.php)
что, если это belongsTo? –
Да, это должно быть обработано – jamesjaya
это не работает, я не знаю, но я думаю, что мы не можем иметь foreach внутри foreach, снова взгляните на мой код просмотра –