使用YII DataProvider的场景

时间:2015-04-30 05:16:38

标签: yii dataprovider

任何人都可以向我解释一下使用特定数据提供者的最佳方案。

例如:

  • 何时使用CActiveDataProvider? (利弊)

  • 何时使用CArrayDataProvider? (利弊)

  • 何时使用CSqlDataProvider? (利弊)

1 个答案:

答案 0 :(得分:1)

  1. CActiveDataProvider - 如果您有模型列表(使用findAll()),请使用此选项。
  2. CArrayDataProvider - 如果您有一个不是模型列表的原始对象数组,请使用此选项。
  3. CSqlDataProvider - 当您有数据库查询时,使用此选项会生成对象列表而不是模型列表。
  4. 您可以使用它们中的所有三个来构造html,例如(默认)小部件。

    文档很清楚何时以及如何使用这三者:

    1. CActiveDataProvider
    2. CArrayDataProvider
    3. CSqlDataProvider