Lauren Mejia

Nicaragua Lauren Mejia


Miembro desde hace 2 semanas

Biografía

No tiene


mejialauren29 aportó en Select dinamicos hace 1 semana

Ya he solucionado gracias por los aportes. dejo la solucion para alguien mas.

Modelo


class Clasificacion extends Model
{
    protected $table='c_clasificaciones';
    protected $primaryKey='id';

    protected $fillable=['empresa_id','codigo','nombre','clase','naturaleza'];

     //relaciones mucho a muchos
    public function Empresa(){

    	return $this->belongsTo(Empresa::class);
    }

}

class Empresa extends Model
{
    
    protected $table='c_empresas';
    protected $primaryKey='id';

    protected $fillable=['nombre','ruc','descripcion','imagen'];

    //relaciones mucho a muchos
    public function Clasificaciones(){

    	return $this->hasMany(Clasificacion::class);
    }

     public function Diarios(){

    	return $this->hasMany(Diario::class);
    }

   
}

Vista

<div class="row">
            <div class="col-md-12">
                <h3>Cuentas Mayores</h3>

                  <div class="form-group">
                    {{ Form::label('empresas', 'Seleccione la empresa') }}                    

                    {{Form::select('empresas',$empresas->pluck('nombre','id'), null, ['class' => 'form-control selectpicker','id'=>'empresas','title'=>'Seleccionar empresa'])}}           
                  </div>

                  <div class="form-group">
                    {{ Form::label('clasificaciones', 'Clasificación') }}

                    {{ Form::select('clasificaciones',[],null, ['class' => 'form-control','id'=>'clasificaciones'])}}
                  </div>                  
                  </div>                             
            </div>                   
        </div>

Controlador

public function create(){


        $empresas=Empresa::all();
         return view('\contabilidad\diarios\create',compact('empresas'));
    }

    public function clasificaciones(){

        $empresas_id=Input::get('empresa_id');
        $clasificaciones=Clasificacion::where('empresa_id','=',$empresas_id)->get();
        return response()->json($clasificaciones);

    }

Jquery

$('#empresas').on('change', function(e){
        console.log(e);
        var empresa_id = e.target.value;
        $.get('/json-empresas?empresa_id=' + empresa_id,function(data) {
          console.log(data);
          $('#clasificaciones').empty();
          $('#clasificaciones').append('<option value="0" disable="true" selected="true">=== Select clasificacion===</option>');

          $.each(data, function(index, clasificacionesObj){
          $('#clasificaciones').append('<option value="'+ clasificacionesObj.id +'">'+ clasificacionesObj.nombre +'</option>');
          })
        });
      });

routes

Route::get('contabilidad/diarios/create', 'DiarioController@create');
Route::get('json-empresas','DiarioController@clasificaciones');

Yo he creado un archivo javascritp en la carpeta public/js y ahi he guardado el script. haciendo la referencia en la plantilla master. Lo he probado con JQuery.2.2.3.js

mejialauren29 aportó en Select dinamicos hace 2 semanas

Gracias @Benjamin Chavez-4b6538a44a1dfdc2b83477cd76dee98e ya he visto el enlace. Voy a tratar de usarlo con objetos de laravel collective. Por aqui mismo muestro como lo harè.

Saludos