问题标签 [cactivedataprovider]
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 - 属性 CActiveDataProvider.Select 在 YII 中未定义
我有一个名为 Activity 的模型,其中 search() 定义如下。但我想不出为什么当我这样称呼它时会提示这个错误..
未定义内部服务器错误属性“CActiveDataProvider.select”。
调用方式..
//获取数据 $model = new $modelName(); if ($modelName === "活动") $criteria = $model->search(); 否则 $criteria = unserialize(base64_decode($criteria));
我在这里做错了什么?谁能帮我解决这个问题
php - Yii CActiveDataProvider 基于item属性的不同_item视图
我正在使用 CActiveDataProvider 填充显示用户之间消息的网页。我有一个使用'zii.widgets.CListView' 和CActiveDataProvider 的视图php 文件。
我正在使用部分 _item.php 文件来呈现每条单独的消息。事情是当前每条消息在每条消息上方用实线呈现,由 _item.php 文件指定。
我只想在之前显示的消息来自其他用户时才显示此行。我认为要做到这一点,我需要能够从数据提供者那里获取有关前一项(或下一项)的信息。我该如何做到这一点?
它看起来像什么:
用户 1: foobar blah blah
用户 2:asdlkfj;ajd
用户 2:aljs;dfjlkjk
我希望它看起来像什么:
用户 1: foobar blah blah
用户 2:asdlkfj;ajd
用户 2:aljs;dfjlkjk
这是我的控制器的样子:
php - Yii 从 CListView 部分访问前一个数据项
我正在使用 CActiveDataProvider 和 CListView 来输出名称列表。仅当名称与之前的名称相同时,我才想使用 html 将名称加粗。这些不是数据库中相同的行,只有“名称”属性相同。
例如,我想要以下内容:
Bob
Rick
Steve
Rick
Rick
George
由于我使用的是 CListView,因此我正在使用来自 $data 的信息创建部分视图,其中包含当前列表项。如何访问上一个列表项的属性?
感谢 Yii 世界的退伍军人!
php - 使用 Yii ActiveRecord 遍历一个大表 - “内存不足”错误
我在 Yii 框架上有一个网站,我想在表格中搜索匹配的单词。
我不断得到"out of memory"
(这是一张大桌子)。
我尝试了这段代码,但它一直在加载页面
所以我尝试了这段代码,但它一直将结果限制为 10:
如果我这样做,我会收到“内存不足”消息:
yii - Yii 使用 CDbCriteria 和 CActiveDataProvider 与自定义搜索连接
您好我正在使用 Yii 创建一个应用程序
我已经修改了模型中的 search() 并且我想出了一个问题。
用户可以以管理员、经理、客户的身份登录
当用户作为经理登录时,他只能从他们都属于的商店查看客户。到目前为止一切顺利,我已经设法做到了。
现在的问题是当我试图阻止经理在 CGridView 中查看来自同一商店的其他经理(并因此编辑彼此的帐户)时。
关系
自定义模型搜索
这是我得到的错误
我知道这与 gii 为我建立的关系有关,但我无法确定。
也许 authitems 的 MANY_MANY 关系会阻止加载用户关系?
php - Yii 分页显示的项目比可用的少
我有一个从 CActiveDataProvider 提供的简单 CGridView。目前,我不确定这已经发生了多长时间,它不会在启用分页的视图中显示所有数据项。
我的标题显示“显示 9 个结果中的 1-7 个”,但没有更多页面的按钮。如果我将数据提供者的 pagenation 属性的 pageSize 设置为一个较小的数字,我最终将获得分页按钮,但它似乎在第一页上显示的项目比第二页少。例如,如果我将 CActiveDataProvider 的 pageSize 设置为 3,我会得到 2,2,3(每页上的项目),而不是我预期的 3,3,1。
如果我将 pageSize 设置为介于 9 和 11 之间的任何值(包括 9 和 11),则有些项目我看不到,因为我只看到一页并且并非所有项目都显示(如果我将 pageSize 设置为 9,则为“1-6 of 9”)。
任何人都知道什么会导致分页如此不稳定?
编辑:此外,将 CActiveDataProvider 更改为 CArrayDataProvider 工作正常,我得到 9 个结果中的 9 个。这暂时可行,因为我的数据集很小,但我宁愿弄清楚问题可能是什么。
php - Yii 标准参数数组和 strstr 函数
我有这个标准参数数组(我试试这个,但它不起作用):
我需要添加一个strstr
功能,params
我该怎么做?
提前感谢
yii - 按虚拟属性对 ActiveDataprovider 进行排序
房主发布工作。工作由 Tradesman 执行。房主通过审查来审查工作的执行方式(基本上他们对商人进行评级)。
Homeowners 和 Tradesman 都是由角色 id 区分的模型 User 的实例,除了 User 我还创建了一个 Job 和一个 Review 模型。评论除了标题和描述外,还包括 6 个不同的评级实体,等级为 1 - 10(灵活性、思维、约会、友好性、性价比和质量)。Job 的平均评分是这 6 个实体的总和除以 6。
评论通过以下关系与工作相关;
工作审查
工作通过以下关系与房主(用户)相关:
以及他发布的工作的房主(用户):
工作与他的商人(用户)的关系如下:
以及他从事的工作的商人(用户):
好的,我想做的是创建一个 Tradesman 列表,并根据他们的评级对它们进行排序。我在我的 userController 文件中创建了以下数据提供程序:
"active" 和 "isTradesman" 是过滤具有 Tradesman 角色的活跃用户的范围。
在 Review 模型中,我创建了一个方法:
所以,每份工作我可以得到平均分。我也试图通过这样的关系来获得这个分数:
我也通过 STAT 关系尝试了它,但我无法让它工作,所以我选择了getScore()
方法方法。
现在我必须在商人的基础上计算所有这些分数,并将它们除以他/她执行的工作数量。然后我想userController::actionIndex()
按这个值对 dataProvider 进行排序。这可以做到吗?如果可以,怎么做?
php - Yii 数据提供者分页如何制作人类 url?
我正在使用以下内容设置分页变量:
并添加到主配置规则:
网址/myrule/page/1
和/myrule/?page=1
工作。但是,分页会生成/myrule/?page=1
. 如何/myrule/page/1
从分页中获取 URL?
caching - Yii 如何在 CActiveDataProvider 中缓存
我想缓存 CActiveDataProvider 实例的数据库结果。
没有缓存CActiveDataProvider?还是一切正常?
我在控制器的操作中准备数据提供程序,然后在 CGridView 中使用数据提供程序,稍后在某些视图中使用。
这是我的代码:
但无济于事:查询没有被缓存。