首页 > 解决方案 > 结构化为 Laravel 方式方法

问题描述

所以我是 Laravel 的新手,我正在尝试以 Laravel 的方式做事。

我正在重建一个自定义 cms。思路很简单,

1)你有一个带有 slug 的页面 2)一个页面可以有组件(小部件)

每个组件都有自己的控制器文件和视图(Twig 模板)。

这个概念是

1) 获取 slug 2) 使用 slug 从数据库中获取页面 3) 获取页面上的组件 4) 渲染所有组件(每个组件都有一个控制器和视图) 5) 使用组件渲染页面。该页面有它自己的控制器

所以在这一点上,我的“黑客”正在工作。

我可以获取 slug、检索页面、获取组件、渲染组件并渲染页面。

但这并不漂亮

我现在的出发点是从路线

Route::get('{slug?}', function ($slug="/") {

// 1) get the slug
// 2) retrieve page from database 
// 3) retrieve components on that page from database
// 4) render each component (calling their controller) and return the html
// 5) render the page (it has it's own controller , the component html is passed into the controller) and output the html

})

这些只是这个函数中的很多逻辑,我想减少它。

我当然可以为页面和组件创建模型以从数据库中获取数据。我不想创建一个页面控制器,然后在该控制器中调用组件控制器。

Laravel 的方法是什么?

标签: phplaravel

解决方案


推荐阅读