Saltar al contenido

laravel relación uno a muchos con ejemplo de código de tabla dinámica

Mercedes, miembro de nuestro equipo, nos ha hecho el favor de crear este tutorial ya que controla perfectamente el tema.

Ejemplo 1: laravel tiene uno a través

<?php

namespace App;

use IlluminateDatabaseEloquentModel;

class Mechanic extends Model

    /**
     * Get the car's owner.
     */
    public function carOwner()
    
        return $this->hasOneThrough('AppOwner', 'AppCar');

Ejemplo 2: uno a muchos laravel

For example, a blog post may have an infinite number of comments. And a single
comment belongs to only a single post  

class Post extends Model

    public functioncomments()return$this->hasMany('AppModelsComment');

class Comment extends Model

    public functionpost()return$this->belongsTo('AppModelsPost');

Ejemplo 3: desconexión de laravel

// Detach a single role from the user...
$user->roles()->detach($roleId);

// Detach all roles from the user...
$user->roles()->detach();

Ejemplo 4: laravel relación de muchos a muchos con tabla dinámica

$user= User::find(1); //any user we want to find$user->trophies()->attach($idOfTrophy); 
//pass id or array of a Trophy ids 
//suppose admin has selected the trophy from a form and trophy id
// is in$request object, then.
$trophyId=$request->trophy_id;$user->trophies()->attach($trophyId); //record is created in DB.
attach and syncWithoutDetaching both does same job

Ejemplo 5: laravel relación de muchos a muchos con tabla dinámica

$trophyIds= Trophy::where('some_column','some_value')                    ->pluck('id')->toArray(); //it will give array of ids.$user->trophies()->detach($trophyIds); //deletes given trophies of $user

Ejemplo 6: laravel de muchos a muchos actualiza todos los pivotes

$user->customviews()
    ->newPivotStatement()
    ->where('user_id', '=', $user->id)
    ->update(array('default'=>0));

Recuerda comunicar este artículo si lograste el éxito.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *