问题标签 [yii-components]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
8543 浏览

php - Yii 将过滤器添加到 CGridView 中的虚拟属性并使其可排序

我有以下型号:

User列 {id,user_name,password,user_type}

Admin列 {id,user_id,full_name,.....etc}

Editor列 {id, user_id,full_name,...等}

关系是 User'admin' => array(self::HAS_ONE, 'Admin', 'user_id'),'editor' => array(self::HAS_ONE, 'Editor', 'user_id'),

Admin'user' => array(self::BELONGS_TO, 'User', 'user_id'),

Editor'user' => array(self::BELONGS_TO, 'User', 'user_id'),

fullName现在我在模型中设置了一个虚拟属性,User如下所示

我可以在 gridview 中显示虚拟属性 , fullName,但是如何向属性添加过滤器并使其在 gridview 中可排序?

更新1:

我根据@Jon 的回答更新了模型 search() 函数,如下所示

管理员和编辑者的姓名都正确显示在网格视图中。但是当我通过过滤器进行搜索时,会发生以下异常,

我怎样才能摆脱这个?

更新2:我的错误。当我改变线路时它工作正常

顺便说一句,谢谢@Jon。

0 投票
3 回答
6179 浏览

php - 在 CGridView 的 htmlOptions 中添加表达式

我正在尝试使用数组中的值设置 htmlOptions,该数组用作 CGridView 组件的 DataProvider(它是 CArrayDataProvider)。其中有一个标志,可以是 0 或 1(0 表示字体粗细:正常,1 表示粗体)

它不起作用,所以我尝试直接在 DataProvider 中设置样式(返回字体粗细:粗体;或字体粗细:正常;):

但输出是:

我究竟做错了什么?

0 投票
2 回答
14713 浏览

controller - 如何更改控制器中的 $model->attributes 值 - Yii

用户主控制器代码:

给我一个错误的行是:$model->attributes['emailsent'] = 'N';

错误:重载属性的间接修改UserMaster::$attributes无效

如何更改属性值?我只想根据条件'Y'设置它'N'

0 投票
1 回答
316 浏览

widget - 如何在 Yii 中使用多个模型构建单个视图?


我正在研究 Yii 应用程序,它只有一个视图 - “仪表板”,我需要在这个单一界面上完成所有应用程序活动。就像显示所有用户详细信息、帐户、历史记录、凝乳设施状态一样。

那么如何使用 DashboardController 在这个单一的“仪表板”界面上为用户定义所有凝乳活动。如果可能,请提出解决方案。谢谢 !!!

0 投票
1 回答
7668 浏览

php - Yii 用户身份验证和会话不起作用

我正在 Yii 中建立一个网站,但我被困在用户身份验证步骤中。无论我做什么,我都无法对用户进行身份验证或在会话中存储一些值。

我的 UserIdentity 组件如下:

我的Yii:app()->user->isGuest总是返回 true 并且Yii::app()->user->id什么也不返回。

这就是我尝试使用Yii::app()->session['loggedin']来进行身份验证的原因。但即使这样也行不通。当我像这样访问会话数组时,Yii::app()->session我得到了错误Property "CWebUser.session" is not defined.

这真是令人沮丧。我是 Yii 的新手。请帮忙。

0 投票
4 回答
6487 浏览

jquery - Firebug 错误:jQuery 未定义 - 在 yii 应用程序中

我正在使用 Yii 框架 v1.1.10r3566。我在 Firebug 中注意到生成的代码正在产生错误。它说“未定义 jQuery”,并且该行有一个函数“jQuery(function($)”。它发生在多个页面上,我相信它会阻止我的 zii 小部件正常运行(以前 CJuiDatePicker 无法正常工作)已经工作了)。我没有使用 jQuery 编写任何例程,也没有包含任何其他 javascript 库。在生成错误的页面之一上生成的代码是:

我束手无策,不知道生成的代码为什么会产生此错误。帮助将不胜感激。

0 投票
1 回答
950 浏览

yii - 如何在yii中拆分表单以实现单个表单的部分提交

我有一个包含有关用户信息的所有字段的模型。并使用 crud 生成器创建视图并修改视图、表单视图,如下所示

在这里,我隐藏了编辑配置文件部分,当用户单击编辑时,它会显示弹出窗口和编辑字段选项。现在的问题是,当我提交时它会提交整个表单,但我只需要提交已编辑的部分,还有一个问题是,当我编辑某些内容然后取消表单时,它仍然保持编辑的值并保存,然后当我提交任何表格的其他部分。请建议我如何实现表单的部分提交

0 投票
1 回答
1819 浏览

jquery - afterAjaxUpdate 回调函数 CListView 显示未定义

我正在尝试调用文件名的 afterAjaxUpdate 参数在另一个 js 文件中定义的函数,但我在控制台中收到错误,该函数未定义

我的js函数是

我可以在我的源代码中看到,文件中定义的函数包含在 yii 默认包含的所有 js 文件之后导致触发我的事件我也尝试通过设置

renderPartial('Mybelowview',null,false,true)

这再次导致我的 js 文件包含多次,并且我的事件被多次触发。

这非常令人困惑,请帮助摆脱它谢谢大家的慷慨

0 投票
3 回答
3244 浏览

yii - YII 使用 gzip 压缩您的应用程序输出

下面的代码是两个事件有什么好处。

它实际上在做什么?

请在我的应用程序中解释此代码的功能。它的作用是什么?它对我有什么帮助?

0 投票
2 回答
2863 浏览

yii - 使用 Yii::app()->user->isGuest 时出错

我想知道用户是否是使用 Yii::app()->user->isGuest 的访客,但我收到以下通知:

显然组件用户尚未在应用程序中定义,我想知道原因。

我曾尝试通过以下方式检查组件是否可用

但是它失败了¿即使没有定义 Yii::app()->user,我如何检查用户是否是访客?¿使用 isGuest 时我应该收到此通知吗?

编辑:我将 error_reporting 指令更改为“E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT”,我需要继续前进。现在我得到了这个致命错误:

致命错误:在第 530 行的 home/mario/projects/ciudad_wiki/yii/framework/web/auth/CWebUser.php 中的非对象上调用成员函数 getId()

无时间记忆功能位置

  1. 0.0005 235120 {main}( ) ../index.php:0
  2. 0.0207 1548168 CApplication->run() ../index.php:13
  3. 0.0207 1548352 CWebApplication->processRequest() ../CApplication.php:162
  4. 0.0235 1725768 CWebApplication->runController() ../CWebApplication.php:135
  5. 0.0272 2103464 CController->运行()../CWebApplication.php:276
  6. 0.0279 2145872 CController->runActionWithFilters()../CController.php:266
  7. 0.0279 2145984 CController->runAction() ../CController.php:287
  8. 0.0279 2146128 CInlineAction->runWithParams() ../CController.php:309
  9. 0.0279 2146688 站点控制器->actionIndex() ../CInlineAction.php:50
  10. 0.0529 3875888 CController->render() ../SiteController.php:33
  11. 0.0529 3876112 CController->renderPartial() ../CController.php:783
  12. 0.0532 3877352 CBaseController->renderFile() ../CController.php:870
  13. 0.0532 3877672 CBaseController->renderInternal() ../CBaseController.php:96
  14. 0.0539 3918144 要求(foo_dir/protected/views/site/index.php')../CBaseController.php:127
  15. 0.0705 4428584 CModule->__get() ../CBaseController.php:199
  16. 0.0705 4428584 CModule->getComponent() ../CModule.php:104
  17. 0.0723 4580360 CWebUser->init() ../CModule.php:388
  18. 0.0736 4671144 CWebUser->getIsGuest() ../CWebUser.php:195
  19. 0.0736 4671240 CWebUser->getState() ../CWebUser.php:279
  20. 0.0736 4671320 CWebUser->getStateKeyPrefix() ../CWebUser.php:557

trace 与上一条类似,Yii 在 $_SESSION 中找不到与用户组件相关的任何内容。

编辑#2:我上传了带有 E_NOTICE 的跟踪,这里是: PHP 通知

编辑#3:我最近将 php 更新到 5.4。当我在使用 php 5.3 的服务器上运行应用程序时没有问题,也许在幕后有一个通知,但不是我在使用 php 5.4 时遇到的致命错误。正如 bool.dev 写道:这是一个完整的猜测。