2016-01-28 1 views
1

Я сделал блог в Laravel 5.2. У меня проблемы с отображением имени пользователя, связанного с этим блогом. Мои флаеры связаны с user_id, но я не могу получить фактическое имя пользователя созданного флаера.Как получить имя пользователя из блога Laravel 5.2

Вот мой Пользователь отношения с Flyer:

/** 
* One user can have many Travel Flyers. 
*/ 
    public function travelFlyers() { 
     return $this->hasMany(TravelFlyers::class); 
    } 

Вот моя модель Flyer ассоциирования пользователя:

/** 
    * A Travel Flyer belongs to a user. 
    */ 
    public function user() { 
     return $this->belongsTo('App/User', 'user_id'); 
    } 

Вот мое шоу способ отображения флаеров:

/** 
    * Show a Travel Flyer in detail. 
    * -- with title being the url 
    */ 
    public function show($title) { 
     // 
     $travelFlyer = TravelFlyers::TravelFlyerLocatedAt($title); 

     // return a view with the travel Flyer. 
     return view('travelflyers.show', compact('travelFlyer')); 
    } 

А вот мой flyer_table:

public function up() 
    { 
     Schema::create('travel_flyers', function (Blueprint $table) { 
      $table->increments('id'); 
      $table->integer('user_id')->unsigned(); 
      $table->string('title'); 
      $table->string('excerpt'); 
      $table->text('description'); 
      $table->string('country'); 
      $table->string('state'); 
      $table->string('city'); 
      $table->double('lat', 20, 10); 
      $table->double('lng', 20, 10); 
      $table->timestamps(); 
      $table->timestamp('published_at'); 
     }); 
    } 

мне нужно сделать что-то вроде этого:

 @foreach($travelFlyers as $flyer) 
      <div class="col-md-12"> 
       <p><b>Username:</b> {{ $flyer->username }}</p> 
      </div> 
     @endforeach 


     This works fine, but I need username, not ID 

     @foreach($travelFlyers as $flyer) 
      <div class="col-md-12"> 
       <p><b>Username:</b> {{ $flyer->user_id }}</p> 
      </div> 
     @endforeach 

ответ

2
{{ $flyer->username }} 

Флаер не имеет username, user имеет username. Но то, что листовка есть это user, так что вам нужно использовать

{{ $flyer->user->username }} 
+0

Я попробовал, что не работаю, я получаю сообщение об ошибке сказав ** FatalErrorException в Model.php линии 852: Класс "App/пользователь не найдено ** – David

+2

Это 'App \ User'. – tkausl

+0

yes, У меня была ошибка: ** return $ this-> attribTo ('App/User', 'user_id'); ** Спасибо. Предполагается, что это App \ User, как сказал – David

 Смежные вопросы

  • Нет связанных вопросов^_^