[PROMOÇÃO] Assine com + 30% de desconto ANUAL MENSAL (últimas horas)
Marcos Birro Calixto
Criador Marcos Birro Calixto 25/11/2021

Bom dia CArlos.

TEnho minha tabela users e minha tabela tipousers .

Schema::create('users', function (Blueprint $table) {

            $table->id();

            $table->unsignedBigInteger('tenant_id');

            $table->unsignedBigInteger('tipouser_id');

            $table->string('name');

 

Preciso relacionar as duas mas não estou conseguindo. Não consig ver meu erro básico!!

Pode me ajudar?

 
Manager Carlos Ferreira 25/11/2021

Olá, Marcos!
Tudo bem?

Você quer criar as chaves estrangeiras (FK), seria isso?

Pode fazer assim:
$table->foreignId('tenant_id')->constrained('tenants');
$table->foreignId('tipouser_id')->constrained('nometabelatipousers');

Carlos Ferreira
Criador Marcos Birro Calixto 25/11/2021

BOa tarde Carlos.

Não. Eu já criei mas meus relacionamentos não estão dando certo.

Quero trazer todos os usuários realconados com o tipo de usuario.

Na tabela users tenho a foreingkey tipouser_id da tabela tipousers

Schema::create('users', function (Blueprint $table) {

            $table->id();

            $table->unsignedBigInteger('tenant_id');

            $table->unsignedBigInteger('tipouser_id');

            $table->string('name');

Marcos Birro Calixto
Manager Carlos Ferreira 25/11/2021

Quer filtrar os usuário por tipo de user, que está na tabela tipousers, seria isso?

Não ficou bem claro a sua pergunta amigo.

Carlos Ferreira
Criador Marcos Birro Calixto 25/11/2021

Quer filtrar os usuário por tipo de user, que está na tabela tipousers, seria isso?

Isso mesmo.

Marcos Birro Calixto
Criador Marcos Birro Calixto 25/11/2021

Queria fazer um relacionamento que ao buscar o user já traz o tipo e vice-versa mas meu relacionamento não funciona. 

Não estou entendo o que fiz de errado.

USers está assim

Schema::create('users', function (Blueprint $table) {

            $table->id();

            $table->unsignedBigInteger('tenant_id');

            $table->unsignedBigInteger('tipouser_id');

            $table->string('name');

 

E tipousers

        Schema::create('tipousers', function (Blueprint $table) {

            $table->id();

            $table->string('name')->unique();

            $table->string('url')->unique();

            $table->string('description')->nullable();

            $table->string('cpf')->nullable();

            $table->string('cnpj')->nullable();  

            $table->softDeletes();

            $table->timestamps();

Marcos Birro Calixto
Manager Carlos Ferreira 25/11/2021

Você pode relacionar o usuário com o tipo user, igual fez nos arquivos de migrations

E depois, nos models definir os relacionamentos, para enfim quando trazer um, já retornar o outro também:

$user = User::with('tiposuser')->find(1);

Carlos Ferreira
Sabe a Solução? Ajude a resolver!

Precisa estar logado para conseguir responder a este ticket!

Clique Aqui Para Entrar!