2016-07-20 10 views
0

私はYiiを初めて使用しています。私は、CRUDモデルの形でこのラインを持っている:Yii2フレームワークでフォームを作成する際にランダムなIDを生成する

<?= $form->field($model, 'idmembers')->textInput() ?> 

私は、入力にメンバー(PRIMARY KEY)のIDをユーザーにしたくない、私はそれが形式で自動的に生成されるようにしたいとフィールドは無効です。

私はランド(1,1000)によって及びrandom_int(1、1000)によってにtextInputを()に置き換え、私はページを更新するとき、私はこのエラーを取得:

Unknown Method – yii\base\UnknownMethodException 
Calling unknown method: yii\widgets\ActiveField::random_int() 

私は前の回答を試してみました、私は宣言変数と私はそれを使用しましたが、同じ問題がまだあります。すべての手がかりは?

ありがとうございます。

+0

テーブル内のAutoIncrementカラムを使用するので、スキーマを修正します – RiggsFolly

+0

コントローラアクションでidmembersプロパティを指定し、textInput()行をビューから削除する必要があります。 –

答えて

0

なぜあなたはrand(1,1000)を使用しましたか?あなたはそれがあなたのprimary fieldであることを言って、これはランドによって生成されるように、あなたのしたい場合、ちょうどあなたのview

<?= $form->field($model, 'idmembers')->textInput() ?>// remove this 

または

からこの行を削除しているよう

はちょうどdatabaseAutoIncrementとしてidmemberscolumnを設定しました関数を定義し、modelにメソッドrandom_int(1, 1000)を定義します。しかし、これはいつか同じことをしないでくださいあなたはdublicate idを取得しますように良いではありません。

関連する問題