Laravel дизайн отношений

//first: Create a class as your view model

public class EventViewModel 
{
 public int Id{get;set}
 public string Property1{get;set;}
 public string Property2{get;set;}
}
//then from your method
[HttpGet]
public async Task<ActionResult> GetEvent()
{
 var events = await db.Event.Find(x => x.ID != 0);
 List<EventViewModel> model = events.Select(event => new EventViewModel(){
 Id = event.Id,
 Property1 = event.Property1,
 Property1 = event.Property2
}).ToList();
 return Json(new{ data = model }, JsonRequestBehavior.AllowGet);
}
2
задан Tridev Shrestha 25 February 2019 в 04:25
поделиться

1 ответ

Вы можете попытаться определить отношения в моделях как «многие ко многим», то есть:

class User
{    
    public function boards()
    {
        return $this->belongsToMany('App\Board', 'memberships', 'user_id', 'board_id');
    }
}

class Board
{    
    public function members()
    {
        return $this->belongsToMany('App\User', 'memberships', 'board_id', 'user_id');
    }
}

С этими определенными отношениями вам на самом деле не нужна Модель членства, если в ней нет дополнительных полей. и вы можете написать такой код:

User::find($id)->boards
Board::find($id)->members
Board::with('members')->find($id)

Вы также можете прочитать документацию по Отношения ко многим ко многим

0
ответ дан dparoli 25 February 2019 в 04:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: