У меня есть две модели, пользователь и роль . Эти две модели имеют отношение к многим ко многим друг с другом с pivot table role_user . В этой таблице Pivot являются значения user_id , role_id и meta_value . Meta_value важен, потому что это внешний ключ (в базе данных, просто int) других моделей. Другая модель выбирается по ролям mate_type .
Миграция пользователя:
Schema::create('users', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('email')->unique();
$table->timestamp('email_verified_at')->nullable();
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
< /code>
Миграция ролей: < /h3>
Schema::create('roles', function (Blueprint $table) {
$table->id();
$table->timestamps();
$table->string('name');
$table->integer('meta_type')->nullable();
});
< /code>
миграция Role_user: < /h3>
Schema::create('role_user', function (Blueprint $table) {
$table->id();
$table->timestamps();
$table->foreignId('user_id')->constrained()->onDelete('cascade');
$table->foreignId('role_id')->constrained()->onDelete('cascade');
$table->integer('meta_value')->nullable();
});
< /code>
Эти значения мета используются, если роль зависит от других моделей. На практике, если у меня есть роль под названием «Член команды», роль будет иметь мета -тип команды (я использую цифры, чтобы определить это).
И теперь мне нужно как -то выбрать всех пользователей, которые имеют роль члена команды с конкретной командой (в Meta).
я попробовал:
.$user = User::with('roles')->where(column: 'meta_type', "=", "2")->wherePivot("meta_value", "=", $team_id)->get();
< /code>
$users = User::all()->with('roles')->where("pivot_meta_value", "=", $team_id)->get();
< /code>
$users = User::whereHas('roles', function($q) {
$q->whereIn('meta_value', 2);
})->get();
< /code>
And many more, but all without success.
Does anyone know how to do it?
Подробнее здесь: https://stackoverflow.com/questions/796 ... many-to-ma
Как запросить модели с тем, где условия на таблице поворота с использованием отношений для многих ко многим? ⇐ Php
Кемеровские программисты php общаются здесь
1749128057
Anonymous
У меня есть две модели, пользователь и роль . Эти две модели имеют отношение к многим ко многим друг с другом с pivot table role_user . В этой таблице Pivot являются значения user_id , role_id и meta_value . Meta_value важен, потому что это внешний ключ (в базе данных, просто int) других моделей. Другая модель выбирается по ролям mate_type .
Миграция пользователя:
Schema::create('users', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('email')->unique();
$table->timestamp('email_verified_at')->nullable();
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
< /code>
Миграция ролей: < /h3>
Schema::create('roles', function (Blueprint $table) {
$table->id();
$table->timestamps();
$table->string('name');
$table->integer('meta_type')->nullable();
});
< /code>
миграция Role_user: < /h3>
Schema::create('role_user', function (Blueprint $table) {
$table->id();
$table->timestamps();
$table->foreignId('user_id')->constrained()->onDelete('cascade');
$table->foreignId('role_id')->constrained()->onDelete('cascade');
$table->integer('meta_value')->nullable();
});
< /code>
Эти значения мета используются, если роль зависит от других моделей. На практике, если у меня есть роль под названием «Член команды», роль будет иметь мета -тип команды (я использую цифры, чтобы определить это).
[b] И теперь мне нужно как -то выбрать всех пользователей, которые имеют роль члена команды с конкретной командой (в Meta). [/b]
я попробовал:
.$user = User::with('roles')->where(column: 'meta_type', "=", "2")->wherePivot("meta_value", "=", $team_id)->get();
< /code>
$users = User::all()->with('roles')->where("pivot_meta_value", "=", $team_id)->get();
< /code>
$users = User::whereHas('roles', function($q) {
$q->whereIn('meta_value', 2);
})->get();
< /code>
And many more, but all without success.
Does anyone know how to do it?
Подробнее здесь: [url]https://stackoverflow.com/questions/79654400/how-to-query-models-with-a-where-condition-on-the-pivot-table-using-a-many-to-ma[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия