私はyiiで新しく、自分の道を見つけようとしています。私はチュートリアルまたは2つを行った。私はその後、私がもっと学べるように例を編集/変更し始めました。私は単純なPINGを行うページを作成しました。それは検証されます。成功すると、静的ページがロードされます。これはすべて動作します。Yii 2 - クラス 'CArrayDataProvider'が見つかりません
私が次に何をしたいのは、グリッドを利用してデータを入力する方法です。私の実際の人生の例は同じです。私は入ってくるデータの配列を取得します。
私はCArrayDataProviderが必要なようです。ですから、私は非常に簡単な例を得ようとしています。私がこれを働かせたら、私は上に行くことができます。
私はたくさんの例を試しました。エラーは毎回同じです。私はCArrayDataProviderをインストールしていないようですか?それが可能であれば。
私は、標準インストールの基本をした:
composer create-project --prefer-dist yiisoft/yii2-app-basic basic
私は私のコントローラファイルの先頭に次き:
use yii2\data\ArrayDataProvider;
私はここにはエラーを取得していません。 ファイルシステム上のファイル自体を検索しましたが見つかりませんでした。私はArrayDataProviderを見つけたので、私はそれ、同じ結果を試みた:
use vendor\yiisoft\yii2\data\ArrayDataProvider;
エラーは次のとおりです。
PHP Fatal Error – yii\base\ErrorException
Class 'CArrayDataProvider' not found
これは、24行目です:
"dataProvider = new CArrayDataProvider($fruits);"
はここに私のコード例です。私は、問題はここにあると思いますが、私が何をしようとしています何を表示しないこと:ファイル・システム(Linux)の自体に
$fruits = array(
array('id' => 1, 'name'=>'apple', 'color' => 'green'),
array('id' => 2, 'name'=>'orange', 'color' => 'orange'),
array('id' => 3, 'name'=>'banana', 'color' => 'yellow'),
array('id' => 4, 'name'=>'pineapple', 'color' => 'brown')
);
$dataProvider = new CArrayDataProvider($fruits);
$this->widget('zii.widgets.grid.CGridView', array(
'id' => 'fruits-grid',
'dataProvider' => $dataProvider ,
'columns' => array(
array(
'name' => 'ID',
'value' => '$data["id"]',
),
array(
'name' => 'Name',
'value' => '$data["name"]'
),
array(
'name' => 'Color',
'value' => '$data["color"]'
),
)
));
私が更新しました:
composer update
を私は持っています最後の2日間はグーグルであり、私は何も見つけ出していません。
日付ピケットを追加しようとしました。それはうまくいった。私は以下を使用しました: https://www.tutorialspoint.com/yii/yii_extensions.htm
つまり、私が呼び出す静的なページには、DateTimePickerが表示されます。
use kartik\datetime\DateTimePicker;
、体内の:私は追加したファイルの開始時に
<?php
echo DateTimePicker::widget([
'name' => 'dp_1',
'type' => DateTimePicker::TYPE_INPUT,
'value' => '23-Feb-1982 10:10',
'pluginOptions' => [
'autoclose'=>true,
'format' => 'dd-M-yyyy hh:ii'
]
]);
?>
私はyii2は私がArrayDataProviderを使用できるようにするために取得するにはどうすればよいです。または、どのように拡張機能をインストールしますか?または私はそれを誰が参照するのですか?
あなたは、これはYiiの1であるとして、あなたが代わりにCArrayDataProvider' 'の' ArrayDataProvider'を使用する必要がありますyii2使用しているよう。 * – pravindot17