English 中文(简体)
Symfony-组件中的对象可用性
原标题:Symfony - object availability in Component
  • 时间:2011-02-17 12:27:34
  •  标签:
  • php
  • symfony1

我很确定这是我虚弱的头脑无法同时学习一种语言(PHP)和一个框架(Symfony),但是。。。我有一个小小的绊脚石想克服。我在一次行动中抓住了一些条令对象——没什么大不了的,很简单。然后,我使用该操作的模板来显示Object属性——同样没有什么异常。

在布局中,我包含了一个用于导航的组件——然后该组件调用Model并获取与上一个操作相同的Object——但使用与该对象不同的属性。

我想做的是与组件共享我在Action中创建的Object——最简单的方法是什么?也许将Object存储在一个单独的类中,并从两者引用它(即某种单例模式方法)?请帮忙!

最佳回答

我想你可以用分部代替一个组件。在这个场景中,您有一个特定User对象的showAction,并且您希望在用户登录时使用staditics模板在所有应用程序中显示。

首先,您创建一个executeShow和ashowSuccess.php模板,该模板看起来像:

操作:

public function executeShow(sfWebRequest $request)
{//the session loggedin user, suppose he s logged in
  $this->user = $this->getUser();
}

模板:

[..blablabla...htmlcode]
<?php echo $user ?>
<?php include_partial( module/partial_name ,array( user ,$user))?>
[..blablabla...morehtmlcode]

现在,位于“module”模块的模板文件夹中的名为partial_name的partial将检查设置的$user变量,这是include_partial的第二个参数,告诉:“定义一个名为user的变量,其值为$user”。

通过这种方式,您可以共享对象的同一实例,而无需在数据库中重新搜索该对象。

问题回答

暂无回答




相关问题
Brute-force/DoS prevention in PHP [closed]

I am trying to write a script to prevent brute-force login attempts in a website I m building. The logic goes something like this: User sends login information. Check if username and password is ...

please can anyone check this while loop and if condition

<?php $con=mysql_connect("localhost","mts","mts"); if(!con) { die( unable to connect . mysql_error()); } mysql_select_db("mts",$con); /* date_default_timezone_set ("Asia/Calcutta"); $date = ...

定值美元

如何确认来自正确来源的数字。

Generating a drop down list of timezones with PHP

Most sites need some way to show the dates on the site in the users preferred timezone. Below are two lists that I found and then one method using the built in PHP DateTime class in PHP 5. I need ...

Text as watermarking in PHP

I want to create text as a watermark for an image. the water mark should have the following properties front: Impact color: white opacity: 31% Font style: regular, bold Bevel and Emboss size: 30 ...

How does php cast boolean variables?

How does php cast boolean variables? I was trying to save a boolean value to an array: $result["Users"]["is_login"] = true; but when I use debug the is_login value is blank. and when I do ...

热门标签