Nell'amministrazione di django, ci sono dei campi che mi piacerebbe richiedere se un modello viene modificato autonomamente. Se è in linea, non voglio che siano richiesti. C'è un modo per fare questo?Nell'amministrazione di Django, posso richiedere campi in un modello ma non quando è in linea?
risposta
Mentre la risposta di Daniel Roseman funziona, non è la soluzione migliore. Richiede un po 'di duplicazione del codice dovendo ri-dichiarare il campo del modulo. Ad esempio, se disponi di un valore verbose_name
in quel campo, devi anche aggiungerealla riga CharField
, poiché la re-dichiarazione dell'intero campo cancella praticamente tutto ciò che è stato impostato sul tuo modello per quel campo.
L'approccio migliore è quello di sovrascrivere il metodo del form __init__
e impostare in modo esplicito field.required
-True
o False
lì.
class MyModelForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(MyModelForm, self).__init__(*args, **kwargs)
self.fields['myfield'].required = True
Sicuro. Basta definire un modulo personalizzato, con il campo obbligatorio sottoposto a override per impostare required = True e usarlo nella classe admin.
class MyForm(forms.ModelForm):
required_field = forms.CharField(required=True)
class Meta:
model = MyModel
class MyAdmin(admin.ModelAdmin):
form = MyForm
class MyInlineAdmin(admin.ModelAdmin):
model = MyModel
Quindi qui MyAdmin utilizza il modulo sottoposto a override, ma MyInlineAdmin non lo è.
- 1. Come posso richiedere un inline nell'Amministratore Django?
- 2. ottenere due campi in linea in forme django-croccanti ma non altri orizzontali?
- 3. Come posso introspezionare proprietà e campi modello in Django?
- 4. Come posso rendere facoltativi i miei campi modello in Django?
- 5. Ottieni i campi del modello in Django
- 6. Django 1.2.1 Admin in linea per molti campi Molti
- 7. Posso aggiungere testo di aiuto nei campi del modello django
- 8. Django Admin -> Modifica ordine di campi, inclusi campi in linea
- 9. Come posso visualizzare un modello in linea di amministrazione Django all'interno di un fieldset?
- 10. linea formset in Django - rimozione di alcuni campi
- 11. Come posso richiedere un file ma non salvarlo con Wget?
- 12. Richiedere un'istanza di un modello
- 13. Campi di modellazione del modello di Django
- 14. Richiedere condizionatamente un solo campo nel modulo modello Django
- 15. Come posso aggiornare solo determinati campi in un modulo modello Django?
- 16. Campi di accesso nel modello intermedio Django
- 17. È possibile richiedere una classe in un modello erb?
- 18. Aggiunta di indici ai campi modello in Django con migrazioni
- 19. Campi del modello personalizzato di Django: to_python() non chiamato
- 20. Django modello in linea di amministrazione per l'utente
- 21. È possibile eseguire il django di campi a caricamento lento in un modello?
- 22. Fare riferimento a un numero dinamico di campi in un modello in django
- 23. Come creare un mix di campi modello django
- 24. I formati e i campi di scelta in linea di Django generano troppe query db
- 25. Campo DateTime in modello Django
- 26. URL tag modello in modello di Django
- 27. Django admin GenericForeignKey in linea
- 28. Come posso ordinare i campi in Django ModelForm?
- 29. Generazione di elenchi/rapporti con riepiloghi in linea in Django
- 30. Quando è "in linea" inefficace? (in C)
Grazie mille – Mitch