2016-07-20 2 views
0

Я новичок в Yii. У меня есть эта строка в виде CRUD модели:Создание случайного идентификатора при создании формы в рамке Yii2

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

Я не хочу, чтобы пользователь ввел идентификатор элемента (PRIMARY KEY), я хочу, чтобы это было автоматически генерируется в виде а поле отключено.

я заменил TextInput() на рандов (1,1000) и random_int (1, 1000), и я получаю эту ошибку, когда я обновить страницу:

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

я попробовал предыдущий ответ, я заявил, переменная, и я использовал ее, но все тот же вопрос. Любые подсказки?

Thank's.

+0

Используйте столбец AutoIncrement в своей таблице, так что измените схему. – RiggsFolly

+0

Вы должны заполнить свойство idmembers в действии контроллера и удалить строку textInput() из представления. –

ответ

0

Привет, почему вы использовали rand(1,1000);

просто установить idmemberscolumn, как AutoIncrement в database, как вы говорите, что это ваш primary field и просто удалить эту строку из вашей view

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

или

если хотите, чтобы это генерироваться рандов затем определите свой метод random_int(1, 1000) в своем model. но это нехорошо, так как когда-нибудь это даст, тогда вы получите dublicate id.

 Смежные вопросы

  • Нет связанных вопросов^_^