我有一个登录表单,显示在页面顶部.仅当用户未在所有页面中登录时才会出现.我应该在哪里声明生成登录表单的类,以便我可以在我的布局中使用它.我尝试了我的bootstrap课程
protected function _initView(){
$this->bootstrap('view');
$view = $this->getResource('view');
$view->headLink()->appendStylesheet($view->baseUrl('/css/default.css'));
$auth = Zend_Auth::getInstance();
if(!$auth->hasIdentity()) {
$login = new Application_Form_User();
$view->login = $login;
}
Run Code Online (Sandbox Code Playgroud)
}
没有任何工作.我也试过了
protected function _initView(){
$view = new Zend_View();
$view->headLink()->appendStylesheet('http://localhost/backend/public/css/default.css');
$auth = Zend_Auth::getInstance();
if(!$auth->hasIdentity()) {
$login = new Application_Form_User();
$view->login = $login;
}}
Run Code Online (Sandbox Code Playgroud)
像这样创建一个视图助手:
class Application_View_Helper_LoginForm
{
public function loginForm()
{
$auth = Zend_Auth::getInstance();
if(!$auth->hasIdentity())
{
$login = new Application_Form_User();
return $login;
}
}
}
Run Code Online (Sandbox Code Playgroud)
您还必须在Bootstrap中注册视图助手路径.参数一是路径,参数二是类名的前缀.
protected function _initViewHelpers()
{
$this->bootstrap('view');
$view = $this->getResource('view');
$view->addHelperPath(APPLICATION_PATH . '/views/helpers/', 'Application_View_Helper');
}
Run Code Online (Sandbox Code Playgroud)
然后要显示表单,请在布局中添加以下代码:
<?php echo $this->loginForm(); ?>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
502 次 |
| 最近记录: |