Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Une vue de formulaire est une description JSON d’une expérience de création du portail Azure. Le portail Azure affiche le formulaire au moment de l'exécution à partir du json ; il n'y a pas de code client à écrire. Les vues de formulaire utilisent le format uiFormDefinition.json et sont utilisées par les formulaires du portail des spécifications de modèle. Applications managées Azure utilisent le format distinct createUiDefinition.json.
Le fichier minimal ressemble à ceci :
{
"$schema": "https://schema.management.azure.com/schemas/2021-09-09/uiFormDefinition.schema.json#",
"view": {
"kind": "Form",
"properties": {
"title": "Create my resource",
"steps": []
},
"outputs": {
"kind": "ResourceGroup",
"resourceGroupId": "",
"location": "",
"parameters": {}
}
}
}
Un affichage Formulaire a toujours :
| Champ | Obligatoire | Description |
|---|---|---|
$schema |
Recommandé | Épinglez le schéma 2021-09-09/uiFormDefinition.schema.json pour IntelliSense. |
view.kind |
Yes | Doit être "Form". |
view.properties.title |
Yes | Titre de la page affiché au-dessus du formulaire. |
view.properties.steps |
Yes | Une ou plusieurs étapes (onglets). Consultez les étapes. |
view.outputs |
Oui (lors du déploiement) | Le contexte de déploiement — à savoir l’abonnement, le groupe de ressources, le groupe d’administration ou le locataire sur lequel le déploiement est effectué, ainsi que les valeurs des paramètres du modèle Azure Resource Manager. Voir Sorties. |
Steps
steps est un tableau ordonné. Chaque étape s’affiche sous la forme d’un onglet. L’utilisateur passe d’une étape à l’autre avec Suivant et Précédent.
"steps": [
{
"name": "basics",
"label": "Basics",
"description": "Provide the basic settings for the resource.",
"elements": [
{
"name": "name",
"type": "Microsoft.Common.TextBox",
"label": "Resource name",
"toolTip": "Provide a unique name.",
"constraints": {
"required": true,
"regex": "^[a-z0-9]{3,24}$",
"validationMessage": "3-24 lowercase letters or digits."
}
}
]
}
]
Chaque étape a :
| Champ | Obligatoire | Description |
|---|---|---|
name |
Yes | Numéro d'identification de l'étape. Faites-y référence dans les expressions sous la forme steps('<name>'). |
label |
Yes | Titre de l’onglet. |
description |
Non | Description facultative affichée sous le titre de l’onglet. |
elements |
Yes | Tableau de contrôles de formulaire. Consultez les éléments de la vue formulaire. |
Regroupez les champs associés avec Microsoft.Common.Section plutôt que de surcharger une étape. Les sections ne peuvent pas être imbriquées.
Sorties (contexte de déploiement)
Lorsqu’un affichage Formulaire est utilisé pour déployer un modèle Azure Resource Manager (cas courant), view.outputs correspond au contexte de déploiement. Le portail l’utilise pour déterminer où déployer et quelles valeurs de paramètre passer au modèle. Quatre kind valeurs sont prises en charge :
kind |
Champs obligatoires | Utilisé quand |
|---|---|---|
ResourceGroup |
resourceGroupId, location, parameters |
La plupart des ressources. Déploie dans un groupe de ressources. |
Subscription |
subscriptionId, location, parameters |
Le $schema du modèle est subscriptionDeploymentTemplate.json. |
ManagementGroup |
managementGroupId, location, parameters |
Le $schema du modèle est managementGroupDeploymentTemplate.json. |
Tenant |
location, parameters |
Le $schema du modèle est tenantDeploymentTemplate.json. |
parameters Les clés correspondent à l’identique aux paramètres du modèle ARM. Les valeurs sont généralement des expressions qui lisent la sortie de l’étape.
Pour les déploiements de groupes de ressources, le schéma public prend en charge Microsoft.Common.ResourceScope, et le didacticiel Créer des formulaires de portail pour les spécifications de modèle l’utilise pour le flux de sélection commun de l’abonnement, du groupe de ressources et de l’emplacement. L’exemple ci-dessous suppose que l’étape basics contient un Microsoft.Common.ResourceScope élément nommé resourceScope. Il s’agit également de la valeur par défaut la plus sûre lorsque le formulaire inclut des contrôles (par exemple Microsoft.Compute.SizeSelector) qui déduitnt leur abonnement et leur emplacement à partir de l’étendue de déploiement.
"outputs": {
"kind": "ResourceGroup",
"resourceGroupId": "[steps('basics').resourceScope.resourceGroup.id]",
"location": "[steps('basics').resourceScope.location.name]",
"parameters": {
"keyVaultName": "[steps('basics').name]",
"location": "[steps('basics').resourceScope.location.name]",
"sku": "[steps('keyvault').sku]"
}
}
Si un formulaire utilise des éléments autonomes Microsoft.Common.SubscriptionSelector, Microsoft.Common.ResourceGroupSelector et Microsoft.Common.LocationSelector au lieu de Microsoft.Common.ResourceScope, assurez-vous que les contrôles sensibles à l’étendue sont explicitement liés à l’abonnement et à l’emplacement sélectionnés via leur propriété scope.
Expressions
Les chaînes du formulaire "[ ... ]" sont évaluées en tant qu’expressions. Les fonctions constituent le même ensemble que celui documenté pour les fonctions CreateUiDefinition :
| Function | Returns |
|---|---|
steps('<stepName>') |
Objet contenant chaque sortie de contrôle à l’étape nommée. |
basics('<elementName>') |
Résultat d’un élément dans l’étape héritée Notions de base (CreateUiDefinition uniquement). |
equals, not, and, or, if, coalesce, empty |
Assistants logiques |
concat, split, substring, indexOf, toLower, toUpper, last, first |
Helpers de chaîne et de tableau. |
length, min, max, add, sub, mul, div |
Helpers numériques. |
subscription(), resourceGroup(), location() |
Étendue sélectionnée. |
Dans un contrôle, visible, defaultValue et la plupart des champs constraints.* acceptent soit une valeur littérale, soit une expression.
Localization
Les chaînes visibles par l’utilisateur peuvent être intégrées directement sous forme de littéraux (comme dans les exemples ci-dessus).
Outils de création
Le bac à sable de la vue Formulaire peut générer un formulaire par défaut à partir d’un modèle ARM et prévisualiser le résultat. Consultez Créer des formulaires de portail pour les spécifications de modèle pour un guide pas à pas complet.
Le schéma est publié à l’adresse
https://schema.management.azure.com/schemas/2021-09-09/uiFormDefinition.schema.json. Pour activer IntelliSense dans Visual Studio Code, ajoutez l’URL du schéma comme valeur de niveau$schemasupérieur dans le fichier de formulaire :{ "$schema": "https://schema.management.azure.com/schemas/2021-09-09/uiFormDefinition.schema.json#", "view": { "kind": "Form" } }Si Visual Studio Code vous invite à approuver le domaine de schéma, choisissez Configurer les domaines approuvés et ajouter
https://schema.management.azure.com. Vous pouvez également l’ajouter ultérieurement à partir de la palette de commandes avec préférences : configurer des domaines approuvés.
Étapes suivantes
- Éléments d’affichage de formulaire
- Créer des formulaires portail pour les spécifications de modèle
- Fonctions CreateUiDefinition : les mêmes fonctions s’appliquent aux expressions de vue Formulaire.