问题标签 [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.
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。
php - 在 CGridView 的 htmlOptions 中添加表达式
我正在尝试使用数组中的值设置 htmlOptions,该数组用作 CGridView 组件的 DataProvider(它是 CArrayDataProvider)。其中有一个标志,可以是 0 或 1(0 表示字体粗细:正常,1 表示粗体)
它不起作用,所以我尝试直接在 DataProvider 中设置样式(返回字体粗细:粗体;或字体粗细:正常;):
但输出是:
我究竟做错了什么?
controller - 如何更改控制器中的 $model->attributes 值 - Yii
用户主控制器代码:
给我一个错误的行是:$model->attributes['emailsent'] = 'N';
错误:重载属性的间接修改
UserMaster::$attributes
无效
如何更改属性值?我只想根据条件'Y'
设置它'N'
widget - 如何在 Yii 中使用多个模型构建单个视图?
我正在研究 Yii 应用程序,它只有一个视图 - “仪表板”,我需要在这个单一界面上完成所有应用程序活动。就像显示所有用户详细信息、帐户、历史记录、凝乳设施状态一样。
那么如何使用 DashboardController 在这个单一的“仪表板”界面上为用户定义所有凝乳活动。如果可能,请提出解决方案。谢谢 !!!
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 的新手。请帮忙。
jquery - Firebug 错误:jQuery 未定义 - 在 yii 应用程序中
我正在使用 Yii 框架 v1.1.10r3566。我在 Firebug 中注意到生成的代码正在产生错误。它说“未定义 jQuery”,并且该行有一个函数“jQuery(function($)”。它发生在多个页面上,我相信它会阻止我的 zii 小部件正常运行(以前 CJuiDatePicker 无法正常工作)已经工作了)。我没有使用 jQuery 编写任何例程,也没有包含任何其他 javascript 库。在生成错误的页面之一上生成的代码是:
我束手无策,不知道生成的代码为什么会产生此错误。帮助将不胜感激。
yii - 如何在yii中拆分表单以实现单个表单的部分提交
我有一个包含有关用户信息的所有字段的模型。并使用 crud 生成器创建视图并修改视图、表单视图,如下所示
在这里,我隐藏了编辑配置文件部分,当用户单击编辑时,它会显示弹出窗口和编辑字段选项。现在的问题是,当我提交时它会提交整个表单,但我只需要提交已编辑的部分,还有一个问题是,当我编辑某些内容然后取消表单时,它仍然保持编辑的值并保存,然后当我提交任何表格的其他部分。请建议我如何实现表单的部分提交
jquery - afterAjaxUpdate 回调函数 CListView 显示未定义
我正在尝试调用文件名的 afterAjaxUpdate 参数在另一个 js 文件中定义的函数,但我在控制台中收到错误,该函数未定义
我的js函数是
我可以在我的源代码中看到,文件中定义的函数包含在 yii 默认包含的所有 js 文件之后导致触发我的事件我也尝试通过设置
renderPartial('Mybelowview',null,false,true)
这再次导致我的 js 文件包含多次,并且我的事件被多次触发。
这非常令人困惑,请帮助摆脱它谢谢大家的慷慨
yii - YII 使用 gzip 压缩您的应用程序输出
下面的代码是两个事件有什么好处。
它实际上在做什么?
请在我的应用程序中解释此代码的功能。它的作用是什么?它对我有什么帮助?
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()
无时间记忆功能位置
- 0.0005 235120 {main}( ) ../index.php:0
- 0.0207 1548168 CApplication->run() ../index.php:13
- 0.0207 1548352 CWebApplication->processRequest() ../CApplication.php:162
- 0.0235 1725768 CWebApplication->runController() ../CWebApplication.php:135
- 0.0272 2103464 CController->运行()../CWebApplication.php:276
- 0.0279 2145872 CController->runActionWithFilters()../CController.php:266
- 0.0279 2145984 CController->runAction() ../CController.php:287
- 0.0279 2146128 CInlineAction->runWithParams() ../CController.php:309
- 0.0279 2146688 站点控制器->actionIndex() ../CInlineAction.php:50
- 0.0529 3875888 CController->render() ../SiteController.php:33
- 0.0529 3876112 CController->renderPartial() ../CController.php:783
- 0.0532 3877352 CBaseController->renderFile() ../CController.php:870
- 0.0532 3877672 CBaseController->renderInternal() ../CBaseController.php:96
- 0.0539 3918144 要求(foo_dir/protected/views/site/index.php')../CBaseController.php:127
- 0.0705 4428584 CModule->__get() ../CBaseController.php:199
- 0.0705 4428584 CModule->getComponent() ../CModule.php:104
- 0.0723 4580360 CWebUser->init() ../CModule.php:388
- 0.0736 4671144 CWebUser->getIsGuest() ../CWebUser.php:195
- 0.0736 4671240 CWebUser->getState() ../CWebUser.php:279
- 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 写道:这是一个完整的猜测。