Pie*_*NAY 3 html python django django-admin django-widget
让我们想象一下这个模型:
class ScribPart(models.Model):
name = models.CharField(max_length=50, unique=True)
text = models.TextField()
Run Code Online (Sandbox Code Playgroud)
我想将一个特定的类附加到该字段text并调用特定的js文件.这样管理页面就像:
...
<script type="text/javascript" src="/static/js/mymarkup.js"></script>
...
<textarea id="id_text" name="text" class="mymarkup"></textarea>
...
Run Code Online (Sandbox Code Playgroud)
如何使用窗口小部件和/或自定义管理表单执行此操作?
要<script>在管理页面中插入,最简单的方法是:
class ScribPartAdmin(model.ModelAdmin):
...
your normal stuff...
...
class Media:
js = ('/path/to/your/file.js',)
Run Code Online (Sandbox Code Playgroud)
现在要将class属性添加到textarea我认为最简单的方法是这样的:
from django import forms
class ScribPartAdmin(model.ModelAdmin):
...
your normal stuff...
...
class Meta:
widgets = {'text': forms.Textarea(attrs={'class': 'mymarkup'})}
Run Code Online (Sandbox Code Playgroud)
我应该补充一点,这种方法适合一次性使用.如果你想多次重用你的字段或JS,那么有更好的方法(字段的自定义小部件,如果JS与字段完全相关,则指定JS文件,扩展模板以在许多地方包含JS文件) .
| 归档时间: |
|
| 查看次数: |
4124 次 |
| 最近记录: |