мне нужно показать некоторые поля в моих видах редактирования, но сделать так, чтобы их нельзя было редактировать
<div class="users form">
<?php echo $this->Form->create('User'); ?>
<fieldset>
<legend><?php echo __('Edit User'); ?></legend>
<?php
echo $this->Form->input('ID');
echo $this->Form->input('username');
echo $this->Form->input('account_type');
?>
</fieldset>
<?php echo $this->Form->end(__('Submit')); ?>
</div>
Есть ли способы использовать функцию; abel () или что-либо еще, чтобы при отображении в представлении идентификатора и типа учетной записи значения этих полей появлялись, но не могли быть изменены?
Вы можете использовать отключенный атрибут простого HTML-тега ввода.
echo $this->Form->input('account_type', array('disabled'=>'disabled'));
Есть несколько вещей не так в вашей форме.
Хорошо, теперь, если вы хотите, чтобы ваши входы были разрешены для редактирования, вы можете принудительно сделать это через атрибут disabled, как сказал @Abhishek. Но вы должны установить его в ложь. Итак, ваша форма должна быть такой:
<div class="users form">
<?php echo $this->Form->create('User'); ?>
<fieldset>
<legend><?php echo __('Edit User'); ?></legend>
<?php
echo $this->Form->input('id', array('disabled'=>false));
echo $this->Form->input('username', array('disabled'=>false));
echo $this->Form->input('account_type', array('disabled'=>false));
?>
</fieldset>
<?php echo $this->Form->end(__('Submit')); ?>
</div>