我应该在哪里放置我想在CakePHP应用程序中抽象的文本?

时间:2010-08-10 19:37:08

标签: php cakephp configuration text abstraction

我正在编写一个CakePHP应用程序,并试图将经常显示(或特别长)的文本保存在我们可以轻松编辑的配置文件中。 我应该把这个文件放在哪里,如何访问它? 当我们需要显示文本以及从能够使用它的其他进程锁定时,我也担心读取此文件的速度权衡。这是我应该担心的问题还是框架处理的问题?

3 个答案:

答案 0 :(得分:6)

是的,Rob说它非常好。你可以把它放在视野中,无论是静态还是动态。如果它是静态的,你可以直接将HTML部分放在一个元素中,然后可以在你想要的任何地方调用它。如果它是动态的,您可以通过Model从数据库中获取数据,将其传递给Controller,然后将其呈现给元素(View的一小部分,或者您可以将其称为Abstract)。

答案 1 :(得分:1)

如果它显示在多个位置,但是静态,则元素就足够了。我不确定我会担心长度,但是一个元素也会在那里工作。如果需要频繁编辑,那么你可能想要考虑放入CakePHP可以轻松处理它的数据库,尽管有人可能已经创建了一个平面文件数据源(我从来没有看过)也能正常工作。

如果您打算使用任何大量非结构化文本,您可能还需要考虑使用MongoDB,CouchDB或其他“NoSQL”变体。对于你提到的内容似乎并不值得,但如果你有更大的背景......也许。

框架不会处理速度权衡 - 事实上,使用框架根本就是你已经选择支持的权衡。除非你预期高负荷和频繁编辑,否则我也不会过于担心锁定,但这只是一种内心的反应。因为我不知道你的细节,所以带上一粒盐。

答案 2 :(得分:0)

  

...包含经常显示的文字   (或特别长)

根据手册,最好存储在视图元素中跨多个视图使用的文本(如Rob Wilkerson所指出的)。

  

我们可以在某个地方   轻松编辑它。

即使在这种情况下,视图元素仍然是选择,因为您可以从多个视图引用此单个元素,因此不需要在数据库中存储。如果您更改了视图元素,那么无论在何处引用/嵌入(非常合乎逻辑),它都会立即生效。

  

...保存在配置文件中

当你开始弱化你的MVC结构时,这将被认为是不好的做法。

Supereasy,supershort阅读: http://book.cakephp.org/view/1081/Elements

祝你的项目好运。