如何打印省名称使用provinceid在拉威尔使用渴望?

w1e3prcc  于 2021-06-23  发布在  Mysql
关注(0)|答案(1)|浏览(447)

我正在开发应用程序使用 laravel 5.6 .
在我的应用程序中,我有三个表作为省、区、镇,这些模型具有以下关系:

Province
    public function districts()
    {
        return $this->hasMany(District::class);
    }

District
    public function province()
    {
       return $this->belongsTo(Province::class);
    }

Town
    public function district()
    {
        return $this->belongsTo(District::class);
    }

现在我有数据抓取使用渴望洛德在 Controller :

$town_list = Town::with('district.province')->groupBy('provinceid')->get();

和下拉选择输入 blade 文件,

<div class="form-group">
            <label for="exampleFormControlSelect1">Province</label>
        <select name="province_id" id="province_id" class="form-control input dynamic" data-dependent="district_id" >
            <option value="">Select Province</option>
            @foreach($town_list as $town)
            <option value="{{$town->provinceid}}">{{$town->provinceid}}</option>
            @endforeach
        </select>
        </div>

现在我可以在我的选择输入中看到provinceid,但我需要在我的选择输入中打印省名,我的表结构,

provinces
id    name
1    alabama
2    prodova

districts
id   name    province_id
1     x          1
2     y          2

towns
id   name    district_id    province_id
1     gh          1              1
2     ju          2              2
uelo1irk

uelo1irk1#

首先,你可以去掉它 province_id 从你的 Town table。镇上的地区给你所需的省id( $town->district->province_id 或者 $town->district->province->id ).
此外,要打印省名,您可以链接您的关系。如前所述,您可以使用 $town->district->province->name .

<option value="{{$town->district->province->id}}">{{$town->district->province->name}}</option>

相关问题