Frappe Framework
Contrôles
On pose un contrôle hors formulaire avec make_control. Chaque fieldtype a ses options. Un formateur personnalise l’affichage des textes.
Créer un contrôle
frappe.ui.form.make_control({ parent, df }) construit le contrôle selon df et l’ajoute dans parent. L’exemple pose une date Due Date dans .my-control, avec render_input: true.
Types publiés
| Type | Option notable dans l’exemple |
|---|---|
| Attach, Attach Image | Pièce jointe, ou image |
| Autocomplete | Liste d’options. L’objet publié répète label et n’a pas de fieldname. |
| Barcode, Check, Color, Date, Date Range, Datetime, Time | Sans option supplémentaire |
| Code | options : Javascript, JS, HTML, CSS, Markdown, SCSS ou JSON. wrap, max_lines, min_lines règlent le retour à la ligne et la hauteur. |
| Currency | options : code, par exemple INR, ou le nom du champ qui porte la devise |
| Data | options : Email, Name, Phone, URL ou Barcode |
| Dynamic Link | options : champ qui contient le type du lien |
| Float, Int, Geolocation, HTML Editor, Markdown Editor, Password, Rating, Text Editor, Icon | Sans option supplémentaire |
| Link | options : nom du DocType |
| MultiCheck | Tableau d’options et columns |
| MultiSelect, Select | Tableau d’options |
| Signature | L’exemple reprend le libellé Status |
| Button | btn_size : xs, sm ou lg |
La carte se personnalise comme indiqué dans Personnaliser le champ Geolocation. Le filtre d’un lien se surcharge comme dans Surcharger la requête d’un champ Link.
Formateur
Pour les types texte (Data, Select, Text, etc.), on pose un formateur sur frappe.meta.docfield_map. L’exemple, pour le fieldtype de DocField, affiche un rond bleu devant « Section Break » et laisse les autres valeurs telles quelles.
Point d’attention
parent est un conteneur déjà présent. render_input: true est dans l’appel, pas dans df. Le formateur de l’exemple ne couvre qu’une valeur précise.
