php – 在Laravel 5中创建“设置”模型的最佳做法是什么?

php – 在Laravel 5中创建“设置”模型的最佳做法是什么?,第1张

概述这是我使用Laravel的第一个项目(我从5.2开始).我正在建立一个自我管理的网站.有一个管理员应该保存网站设置,以便以后在网站上使用.例如:背景颜色,社交网络,带图片的旋转木马,产品等. 我的第一次尝试是使用:id |创建模型“Setting”键(唯一)|值.当我试图保存社交网络(显示在网站标题中)时,我意识到我必须用URL,标题等保存“值”json …关系模型的丑陋实现,所以我来到结论是不好 这是我使用Laravel的第一个项目(我从5.2开始).我正在建立一个自我管理的网站.有一个管理员应该保存网站设置,以便以后在网站上使用.例如:背景颜色,社交网络,带图片的旋转木马,产品等.

我的第一次尝试是使用:ID |创建模型“Setting”键(唯一)|值.当我试图保存社交网络(显示在网站标题中)时,我意识到我必须用URL,标题等保存“值”Json …关系模型的丑陋实现,所以我来到结论是不好的.我创建了一个sepparated模型SocialNetwork:ID |网址|图片|名称.

现在我正在考虑在我的BaseController中一次加载所有这些模型,所以我可以通过所有控制器,但我不确定它是否正确.我的意思是,一个数组$设置与所有模型作为其一部分:

abstract class BaseController extends Controller{    protected $settings;    ...    public function __construct(...)    {        $this->settings = [            'backgroundcolor' => 'red','socialNetworks' => SocialNetwork::all(),'other' => Other::all(),...        ]    }}

这对我来说看起来很可怕,但是我迷失了这个框架,我不知道我能做些什么才能解决这个问题.
有人告诉我有关服务提供商的信息,但我正在试图弄清楚它的优势以及能够利用这些模型(保存数据)的最佳方法,而我却得不到它.

我不是要求明确的代码(但这会很好),我会在理解了这个方法之后进行调查,但是我会非常感激一些提示或概念上的帮助.

谢谢!

解决方法 这是一个很好的问题.最近我为我的Code Canyon产品( Krisma CMS Script)做了一个,我的方法如下.

1)创建了服务提供商

public function boot()    {        $this->header();        $this->intro();        $this->about();        $this->resume();        $this->portfolio();        $this->services();        $this->stats();        $this->contact();        $this->footer();        $this->section();        $this->codesetting();        $this->customizer();    }

在引导中调用的每个函数都在引导函数下面的ProvIDer类中声明.
例如,对于标题部分我通过标题模型从数据库中获取数据并在全局共享,可以在应用程序的任何位置访问.

$section = Section ::find(1);vIEw()->share('section ',$section);

2)为每个部分创建一个表,即about,intro等,并插入我想要修改的值.

3)现在,在管理面板中,创建一个表单以进行更改/修改,并更新所需的部分属性.

4)获取视图中的数据.假设用户已将背景颜色从管理面板更改为RED,请在视图样式中打印出该变量:{{$sectionname-> color}}

5)我希望它能让你更好地了解如何实现设置,我为我的产品做了这个,可能有更好的方法,但到目前为止,这是我在研究中发现的,对我来说非常适合.

总结

以上是内存溢出为你收集整理的php – 在Laravel 5中创建“设置”模型的最佳做法是什么?全部内容,希望文章能够帮你解决php – 在Laravel 5中创建“设置”模型的最佳做法是什么?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1251555.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存