php – 如何在Kohana 3项目中安排业务逻辑

前端之家收集整理的这篇文章主要介绍了php – 如何在Kohana 3项目中安排业务逻辑前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在寻找建议,教程和链接,如何与Kohana 3建立一个中型Web应用程序.我过去已经实现了MVC模式,但从来没有反对一个“正式化”的MVC框架,所以我仍然得到我的围绕术语 – 围绕着基本的例子,构建视图和模板等等.

我进展得很好,但是我想建立一个真实世界的Web项目(我自己已经计划了一段时间了)作为一个学习对象.

我以学习的最好的例子,但基于示例的文档对于Kohana 3现在有点稀疏 – 他们自己在网站上说.虽然我并不担心在学习框架的同时,我希望确保代码基础从一开始就健康地结构 – 即控制器分得很好,命名得很好,按照标准,最重要的是业务逻辑是分成适当大小的模型.

我的应用程序在其核心部分可以描述为具有一系列搜索和列表功能的商业目录,以及每个条目所有者的登录区域.实际的管理数据库后端已经被处理了.

假设我已经完成了所有的API,已经列出了所有的业务,编辑业务,通过街道名称列出业务,创建报价登录为业务等等,我只是在寻找如何适应功能一个MVC模式,并可以轻松扩展到Kohana应用程序结构.

>你知道现实生活中的“数据库重”应用程序的例子,如目录,在线社区…具有建立在Kohana 3上的登录区域,最好是开放源代码,所以我可以看看他们怎么做?
>关于如何在Kohana项目中为最终用户构建可扩展登录区域的惯例或最佳做法,该项目不仅可以处理业务目录页面,还可以在单​​独的页面上进一步扩展产品.
>您是否知道与Kohana建立复杂应用程序的任何好的资源?
你有没有建立类似的东西,可以给我建议一个项目结构?

Bounty

I’m awarding the bounty to @antpaw because he provided me with a Kohana application with some business logic that is giving me a lot of examples. Cheers @Pixel Developer for your excellent input as well – as so often,I’d wish one could split a bounty!

我会使用kohana附带的auth模块进行登录.这将为您提供角色表,您可以在其中设置可能的权限选项,稍后将其与用户相关联.之后,您可以检查每个控制器的__constructor()或action_function(),无论用户是否具有必需的角色.使用 – > has()函数.您也应该使用ORM模块,它只是很棒,因为表之间有很多关系.另外ORM对象中的__get()方法也非常方便.

它也很容易通过将新参数设置为NULL并在if语句中检查来扩展控制器功能.例如您只需要一个编辑旧条目或添加新条目的功能.

public funciton action_manage($id = NULL)
{
    $entry = ORM::factory('entry',$id); // if id is null a new entry will be returned 
}

将视图结构化为子文件夹也是至关重要的,以避免一个凌乱的视图目录.

猜你在找的PHP相关文章