Comment masquer un champ lors de la création d'un nœud, mais l'afficher lors de la modification d'un mode?
11
Si je comprends votre question, je pense que vous pouvez utiliser un module personnalisé (dans cet exemple, le nom du module est test_remove_field
) et inclure le code suivant:
function test_remove_field_form_alter(&$form, &$form_state) {
if (arg(0) == 'node' && arg(1) == 'add') {
$form['field_test']['#access'] = 0;
}
}
Remarque: n'oubliez pas que ce field_test
doit être votre nom de champ respectif.
Le module Autorisations de champ vous permet de définir des autorisations au niveau du champ:
Vous pouvez utiliser ces options pour activer l'autorisation basée sur les rôles pour un champ.
Autorisations de champ
la source
J'utiliserais hook_form_alter () et définirais la
['#access']
propriétéFALSE
comme la réponse de @ moon.watcher.Si vous êtes dans Drupal 6, vous auriez besoin d'un module pour ce faire. Dans Drupal 7, vous pouvez appeler hook_form_alter () à partir de votre modèle.
la source
Il s'agit d'un cas d'utilisation du module de prise en charge des formulaires de règles - https://www.drupal.org/project/rules_forms .
Les fonctionnalités incluent:
la source
Vous pouvez reprendre le formulaire d'ajout / modification de noeud avec les pages du panneau. Avec cela, vous pouvez choisir ce que vous voulez sur le formulaire.
la source