Question

I'm trying to bind multiple models to a form. Currently, I have 4 models:

<?php

class DemDataSet extends Eloquent {

    public $timestamps = false;
    protected $connection = 'epcr_dem_data';
    protected $table = 'DEMDataSet';
    protected $primaryKey = 'pk_DEMDataSet';

    public function DemographicReport(){
        return $this->hasOne('DemographicReport','fk_DemDataSet','pk_DemDataSet');
    }

}

class DemographicReport extends Eloquent {

    public $timestamps = false;
    protected $connection = 'epcr_dem_data';
    protected $table = 'DemographicReport';
    protected $primaryKey = 'pk_DemographicReport';

    public function DemDataSet(){
        return $this->belongsTo('DemDataSet','fk_DemDataSet','pk_DemDataSet');
    }

    public function dAgency(){
        return $this->hasOne('dAgency','fk_DemographicReport','pk_DemographicReport');
    }

}

class dAgency extends Eloquent {

    public $timestamps = false;
    protected $connection = 'epcr_dem_data';
    protected $table = 'dAgency';
    protected $primaryKey = 'pk_dAgency';

    public function DemographicReport(){
        return $this->belongsTo('DemographicReport','fk_DemographicReport','pk_DemographicReport');
    }

    public function dAgency_10(){
        return $this->hasMany('dAgency_10','fk_dAgency','pk_dAgency');
    }

}

class dAgency_10 extends Eloquent {

    public $timestamps = false;
    protected $connection = 'epcr_dem_data';
    protected $table = 'dAgency_10';
    protected $primaryKey = 'pk_dAgency_10';

    public function dAgency(){
        return $this->belongsTo('dAgency','fk_dAgency','pk_dAgency');
    }

}

?>

And I'm passing it to my view through my controller like so:

public function index()
{
    //THIS is the line I need help with (I think):
    $agency = dAgency::with('dAgency_10','DemographicReport')->find(1);

    //for troubleshooting:
    echo "<pre>",print_r(dAgency::with('dAgency_10','DemographicReport')->find(1)->toArray()),"</pre>";

    return View::make('test')
        ->with('agency', $agency);
}

I'm able to bind everything except for data from the DemDataSet model, which I can't even figure out how to establish the relationship between it and my dAgency model. So basically, I just want the fields in the DemDataSet model to be available to my view, then obviously I want to be able to perform all the CRUD operations eventually.

Pas de solution correcte

Autres conseils

Looking at your models, you should just be able to access it via the DemographicReport.

i.e.,

$dataset = $agency->DemographicReport->DemDataSet;
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top