Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
|
wiki2:python:django:admin [2018/11/09 14:06] alfred |
wiki2:python:django:admin [2020/05/09 09:25] (actual) |
||
|---|---|---|---|
| Línea 137: | Línea 137: | ||
| list_display = ('title', 'author', 'display_genre') | list_display = ('title', 'author', 'display_genre') | ||
| inlines = [BooksInstanceInline] | inlines = [BooksInstanceInline] | ||
| + | </code> | ||
| + | |||
| + | ===== Admin templates ===== | ||
| + | ==== Overriding them ==== | ||
| + | * https://docs.djangoproject.com/en/2.0/ref/contrib/admin/#admin-overriding-templates | ||
| + | |||
| + | |||
| + | ===== JS y CSS en el Admin ===== | ||
| + | |||
| + | ==== Usando jQuery en el Django Admin ==== | ||
| + | <code> | ||
| + | (function($) { | ||
| + | // < start of closure | ||
| + | // within this block, $ = django.jQuery | ||
| + | $(document).ready(function() { | ||
| + | // Your JavaScript | ||
| + | }); | ||
| + | })(django.jQuery); | ||
| + | </code> | ||
| + | |||
| + | ==== Add static snippets ==== | ||
| + | <code> | ||
| + | # admin.py | ||
| + | class MyModelAdmin(admin.ModelAdmin): | ||
| + | # admin additions | ||
| + | |||
| + | class Media: | ||
| + | css = { | ||
| + | "all": ("css/my_style.css",) | ||
| + | } | ||
| + | js = ("js/my_script.js",) | ||
| </code> | </code> | ||
| ===== Gotchas ===== | ===== Gotchas ===== | ||
| Línea 196: | Línea 227: | ||
| return response | return response | ||
| </code> | </code> | ||
| + | |||
| + | === Dynamically hide fields === | ||
| + | <code> | ||
| + | class BookAdmin(admin.ModelAdmin): | ||
| + | list_display = ("pk", "get_title_or_nothing") | ||
| + | |||
| + | def get_form(self, request, obj=None, **kwargs): | ||
| + | if obj.type == "1": | ||
| + | self.exclude = ("title", ) | ||
| + | form = super(BookAdmin, self).get_form(request, obj, **kwargs) | ||
| + | return form | ||
| + | </code> | ||
| + | |||
| + | |||