问题标签 [csqldataprovider]

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 回答
648 浏览

php - 在 Yii 中对 CSqlDataProvider 进行排序

我有一个相当复杂的查询,我将 CSqlDataProvider 用于:

查询效果很好。但是,这些列不可排序。

我确保使用 CSqlDataProvider 遵循Yii CGridview 排序,但它们仍然不是可点击的列标题。

这是我的列数组:

帮助?):

0 投票
2 回答
578 浏览

yii - 使用 Csqldataprovider CGridView 和 CButtonColumn (Yii Framework) 不会出现

我有一个使用 Csqldataprovider 的 gridview 但不像 CAtiveDataProvider 默认 cButton 列没有出现我确实向它编写了自定义代码

也没有在 gridview 中渲染 $data["mid"]

但浏览器呈现

PHP 通知 Trying to get property of non-object ...yii\framework\base\CComponent.php(612) : eval()'d code(1 )

谁能告诉我我错过了什么

0 投票
1 回答
345 浏览

php - Yii CSqlDataProvider 与关系

我有一个带有连接和条件的复杂查询,
我使用 CSqlDataProvider 获取数据
但我还需要连接关系表记录。

比方说,我们有表 A ( products) 和表 B ( product_modifications)
我需要列出产品及其修改..

我从表 A 中获取数据,我还需要从表 B
中为表 A 中的每条记录获取一些记录,查询应该从表 B 中获取一个数组

基本代码:

我的查询

如何连接表 B ( product_modifications) 中的记录?就像CActiveDataProvider这样:

但我不知道该怎么做CSqlDataProvider

UPD:通过将查询转换为相应的 CActiveDataProvider 查询来解决

0 投票
1 回答
1014 浏览

php - Yii分页结果使用CSqlDataProvider

我正在使用带有 CSqlDataProvider 的分页。结果正确显示在分页的前 20 页或第一页。当我在网页上看到日志消息时,它使用的查询实际上是为所有页面选择前 20 行,这就是问题所在。我不知道如何纠正它。

我的控制器有代码:

现在它用于计数的查询是正确的(日志消息):

查询 SQL:

它用于第 2 页的查询是(日志消息):

上面的查询实际上会给出前 20 行的结果。每一页都有同样的问题。它将每个结果作为相同的前 20 行。所以第3页变成(日志消息):

我能看到的唯一问题是它用于检索第 2,3 页的数据的查询......等等。对于每一页,它都会返回相同的数据,因为每次它都选择前 20 行。我不明白这种行为的原因。当您在分页期间SQL SERVER用作数据库和数据提供者时,查询的实际外观如何?CSqlDataProvider

0 投票
1 回答
301 浏览

php - Yii Csqldataprovider 仅适用于第一页

这对我来说是一个非常奇怪的情况。我有一个 CSqldataprovider 来处理我的分页。

根据文档和示例,它几乎是正确的。它根据 totalitemcount 和 pagesize 计算正确的页数。它完美地显示了第一页,但是当我单击下一页链接时,它没有显示任何记录。当我在 $this->dataProvider->getData() 上执行 var_dump 时,它会在除第一页之外的所有其他页面上显示一个空数组...

我的分页代码如下:

如果有人知道我做错了什么......请告诉我:)

亲切的问候,

皮姆

0 投票
1 回答
234 浏览

caching - Yii- 使用 CSqlDataprovider 进行缓存

使用 CSqlDataProvider 时是否可以缓存来自 sql server 查询的数据。如果可以,任何人都可以提供一些有关它的文档链接。或者,如果您亲自完成,请指导。

我进行了搜索,但一无所获:(

0 投票
1 回答
709 浏览

sql - Yii: Get Column names from dynamic query

Is it possible to execute a query and just get the column names of the returned result set. I need the column names since the query is dynamic and I don't know the names of the columns.

I will use these column names for sorting when executing the query again.

You could refer to my Previous question to get the idea why I need it.

Thanks.

0 投票
0 回答
121 浏览

php - 无法从 tbgridview yii 检索值

我正在使用 Yii Bootstrap TbGridView 来显示来自 CSqlDataProvider 的 DataProvider。但是,我无法将值显示到屏幕上。我不知道发生了什么。这是我的代码:

控制器页面:

前景视图页面:

我在本地服务器上进行测试,没有错误,但是使用循环的值:

此列的值未显示。但是,对于“顾问”的列,可以显示该值。另一个问题是当我将文件上传到真实服务器时,会出现错误:

数据在哪里,指的是$data->ProspectDate 有人可以帮我弄清楚,有什么问题吗?

0 投票
1 回答
194 浏览

php - 如何使用 CSqldataprovider 使 CGridView 列可排序?

如何使用 CSqldataprovider 使 CGridView 列可排序(单击列标题)。

在控制器中

在视图中

它给出了错误

0 投票
1 回答
235 浏览

php - Yii CSqlDataProvider() 和 MSSQL - 最后一页错误

我正在使用 Yii 1.1.16 并CSqlDataProvider()CGridView. 当转到最后一页时,我得到最后PageSize计数记录,而不是最后一页的记录数。例如,我有 12 条记录的网格并PageSize设置为 10,这意味着我有 2 页,所以在第 1 页,我从 1 - 10 获取记录,但在第 2 页(最后一页)我得到记录 3 - 12!

这是我在每一页上得到的值

如您所见,这是我应该在页面上获得的值,显示的数据应该是正确的,但不是。

我故意写了 Yii 版本,因为这是在 Yii 从 1.1.8 升级之前工作的

还有一件事,我正在使用MSSQL(Microsoft SQL)数据库来提供数据