【问题标题】:Laravel: How to create variables from database and access values in bladeLaravel:如何从数据库创建变量并访问刀片中的值
【发布时间】:2017-07-16 06:12:46
【问题描述】:

我有一个关于 laravel 5.4 专家的问题/设计问题。

我有一个包含不同“公司”的网站: example.com/company1 example.com/company2 等

我有一个“公司”表,其中包含公司的数据,例如(“id”、“name”等)。该页面使用刀片模板显示。

我现在喜欢在每个页面上设置一组“部分”。像“company_history”、“company_employees”等。这些部分应该由我的管理仪表板定义,因为新部分会不时添加。我在具有“sectionId”和“name”列的表“sections”中定义了这些部分。

此外,我还有一个表“content”,其中包含“id”、“companyId”、“sectionId”和“content”列。

我现在喜欢在视图模板中使用 {{ $content['company_history'] }} 之类的东西来显示当前公司的内容。

目前,我通过遍历“部分”的每个项目并从“内容”表中获取每个值的内容,在该页面的控制器中创建了一个数组。 “内容”列包含应显示的内容。

有更好的解决方案吗? 我已经尝试在模型中使用“belongsToMany”,但我认为这仅适用于“真实”数据透视表。

有什么想法吗?我愿意接受任何解决方案:)

谢谢!

【问题讨论】:

    标签: laravel blade


    【解决方案1】:

    有几种方法可以解决这个问题。您可能喜欢的惰性解决方案是将其序列化到公司的列中。

    见:https://laravel.com/docs/5.4/eloquent-mutators#array-and-json-casting

    这避免了单独的表和连接的所有问题。

    如果您需要按内容(例如产品属性)进行搜索,这并不理想,但在您的情况下,这应该不是问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-19
      • 2018-09-30
      • 2017-08-19
      • 2020-11-30
      • 2023-03-04
      • 2020-11-16
      • 1970-01-01
      • 2020-08-16
      相关资源
      最近更新 更多