2010-11-12 77 views
1

我正在构建一个CodeIgniter应用程序并使用Smarty作为我的模板系统。不要试图从各种控制器中分配Smarty变量,最好是在一个地方定义所有的Smarty变量(例如一个控制器超类),以便一切都在一个地方?我对这种方法的担忧是,分配特定控制器/视图对不需要的变量可能会降低性能。Smarty变量

想法?

回答

2

在同一个地方!=好

由真实赋予它们的代码保持你的模板变量赋值。这不仅更容易维护,而且更有意义,因为它应该是控制器直接分配模板变量(而不是通过某些中介)。此外,多个控制器可以使用模板,并且可以通过不同的规则分配变量。

+0

请您详细说明正反两面吗? – StackOverflowNewbie 2010-11-12 00:48:37

+1

我增加了一些细节。不幸的是,你的超级方法没有优点。由于控制器方法负责与模型和视图进行交互,所以在一个地方有数十个或数百个变量在MVC中没有很好的作用,因此它们只是执行模板变量赋值的合理位置。 – webbiedave 2010-11-12 01:01:35