Evet, bunu yapabilirsin.
"Planlar" kavramına sahip bir bileşene sahibiz, farklı erişim düzeyleri için aynı görünümü kullanır, ancak alanları kullanıcı gruplarına bağlı olarak erişilebilir veya değil yapar.
Dolayısıyla, bir planı "Çalıştırabilecek" ancak düzenleyemeyen kullanımlar için, bir grup alanı "kapatıyoruz". Alan türüne bağlı olarak, bu birkaç alan özniteliğinin ayarlanması anlamına gelebilir, ör.
$this->form->setFieldAttribute('name', 'class', 'readonly');
$this->form->setFieldAttribute('name', 'readonly', 'true');
$this->form->setFieldAttribute('description', 'class', 'readonly');
$this->form->setFieldAttribute('description', 'disabled', 'true');
$this->form->setFieldAttribute('description', 'type', 'text');
$this->form->setFieldAttribute('published', 'class', 'readonly');
$this->form->setFieldAttribute('published', 'readonly', 'true');
$this->form->setFieldAttribute('publish_up', 'class', 'readonly');
$this->form->setFieldAttribute('publish_up', 'readonly', 'true');
$this->form->setFieldAttribute('publish_up', 'format', '%Y-%m-%d %H:%M:%S');
$this->form->setFieldAttribute('publish_up', 'filter', 'user_utc');
$this->form->setFieldAttribute('publish_down', 'class', 'readonly');
$this->form->setFieldAttribute('publish_down', 'readonly', 'true');
$this->form->setFieldAttribute('publish_down', 'format', '%Y-%m-%d %H:%M:%S');
$this->form->setFieldAttribute('publish_down', 'filter', 'user_utc');
Bu nedenle, alanınızın ne olduğuna bağlı olarak, myReadOnlyCode
yukarıda gösterildiği gibi bir veya daha fazla özellik ayarlayarak yapabilirsiniz, örneğin, yalnızca standart bir metin girişi ise:
$this->form->setFieldAttribute('myReadOnlyCode', 'class', 'readonly');
$this->form->setFieldAttribute('myReadOnlyCode', 'readonly', 'true');