439 | | See #6619. |
| 439 | Override `form_add()` and `form_change()` in ModelAdmin. |
| 440 | |
| 441 | E.g. to add TinyMCE: |
| 442 | {{{ |
| 443 | class MyModelAdmin(admin.ModelAdmin): |
| 444 | save_on_top = True |
| 445 | inlines = (MyOtherModelInline,) |
| 446 | def form_add(self, req): |
| 447 | class _AddForm(forms.Form): |
| 448 | class Media: |
| 449 | js = ['/site_media/js/tiny_mce/tiny_mce.js', |
| 450 | '/site_media/js/add_editor.js'] |
| 451 | if self.declared_fieldsets: |
| 452 | fields = flatten_fieldsets(self.declared_fieldsets) |
| 453 | else: |
| 454 | fields = None |
| 455 | return forms.form_for_model(self.model, form=_AddForm, fields=fields, |
| 456 | formfield_callback=self.formfield_for_dbfield) |
| 457 | }}} |
| 458 | |
| 459 | Note that this behaviour will change, a much more user-friendly way to control this will be added soon. |