У меня есть две таблицы: UserActivities
и Activities
.
Деятельность:
| Column | Type |
|--------|------------------|
| id | int |
| name | varchar(255) |
| | |
UserActivities:
| Column | Type | Comment |
|-------------|------|--------------------------|
| id | int | |
| user_id | int | |
| activity_id | int | //id of activity by name |
Теперь, чтобы вставить элемент Item в UserActivity
Модель, мне нужно написать два утверждения, как это
$activity = Activity::where('name', '=', 'user_login')->first();
UserActivity::create(['user_id' => Auth::login(), 'activity_id' => $activity->id]);
Хотя это нормально, но я только что прочитал Красноречивые отношения и задаюсь вопросом, существует ли способ создать belongsTo
или какое-либо отношение и вставить его напрямую, как это
UserActivity::create(['user_id' => Auth::login(), 'activity' => 'user_login']);
И он автоматически вставляет activity_id
при поиске по имени? Возможно ли это?