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

Bom dia.

Eu rpeciso criar uma relação entre usuário e tipo de usuário então estou fazendo assim:

Sendo que: um usuário pode ser de um tipo e um tipo pode ser vários usuários

        Schema::create('users', function (Blueprint $table) {
            $table->id();
            $table->foreignId('tipo_user_id')->constrained();
            $table->string('name');
            $table->string('email')->unique();
            $table->timestamp('email_verified_at')->nullable();
            $table->string('password');
            $table->rememberToken();
            $table->timestamps();
        });
 
        Schema::create('tipo_users', function (Blueprint $table) {
            $table->id();
            $table->string('name')->unique();
            $table->timestamps();
        });
 
na model User fiz:
    public function tipoUser(): BelongsTo
    {
        return $this->belongsTo(TipoUser::class);
    }
 
E na model TipoUSer
 
    public function user()
    {
        return $this->hasOne(User::class);
    }
 
Está certo isso?
Obrigado.
Manager Carlos Ferreira 15/07/2024

Olá, Marcos!

Tudo bem?

 

Como suas tabelas não seguiram as convensões de nomes corretos, precisa especificar no model no relacionamento qual o nome da FK:

public function tipoUser(): BelongsTo

{

  return $this->belongsTo(TipoUser::class, 'tipo_user_id');

}

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

Precisa estar logado para conseguir responder a este ticket!

Clique Aqui Para Entrar!