首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel关系在CRUD应用中的应用

Laravel关系在CRUD应用中的应用
EN

Stack Overflow用户
提问于 2018-11-20 22:12:14
回答 1查看 197关注 0票数 0

我想用Laravel创建一个CRUD应用程序,并提供以下场景:我们有一个矿井,在这个矿场中,各种卡车从一个矿坑中提取采矿材料,并通过一条道路将其存放在垃圾堆中。现在每条路都把一个区域和一个垃圾坑连接起来。因此,“道路No1”从“区域1”和“倾倒孔1”的材料。道路No2从“区域1”的材料以及可能处置它到“倾倒洞1”也。因此,区域和道路有一对多的关系,就像一个地区可以有很多道路,垃圾堆洞和道路应该有一对多的关系,就像一个垃圾坑从许多道路上得到材料一样。

想当然地认为,区域、道路和倾倒坑是三个不同的表,是否完全有必要像上面提到的那样在这三个表之间建立关系?如果是的话,我想知道这是否会在“道路”表中创建重复的值,以防用户希望看到道路上放置材料的转储点或道路来自的区域。例如,考虑下表:

代码语言:javascript
复制
+----+-------------+----------+-------+---------+---------------+
| id | route       | distance | slope | area    | dumpsite      |
+----+-------------+----------+-------+---------+---------------+
|  2 | First route |    10000 |    20 | E12     | Big Dumpsite  |
|  3 | Second route|     2000 |    15 | E12     | Huge Dumpsite |
|  4 | Third route |     2555 |    10 | E13     | Big Dumpsite  |
+----+-------------+----------+-------+---------+---------------+

正如您在area和dumpsite列中看到的那样,存在重复的值。

这个设计好吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-21 01:14:09

据我所知,你会像这样设置你的模型

代码语言:javascript
复制
class Area extends Model
{
    public function roads() {
        return $this->hasMany('App\Road');
    }

    // to access areas possible dumpsites
    public function getDumpsitesAttribute()
    {
        return $this->roads->with('dumpsite')->get()->pluck('dumpsite')->unique();
    }
}

class Road extends Model
{
    public function area() {
        return $this->belongsTo('App\Area');
    }

    public function dumpsite() {
        return $this->belongsTo('App\Dumpsite');
    }
}

class Dumpsite extends Model
{
    public function roads() {
        return $this->hasMany('App\Road');
    }

    // to access dumpsites possible area
    public function getAreasAttribute()
    {
        return $this->roads->with('area')->get()->pluck('area')->unique();
    }
}

您的road表将有area_iddumpsite_id

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53402384

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档