擅长:python、mysql、java
<p>为什么不在适当的模型中添加<code>dropcode</code>属性呢?例如</p>
<pre><code>class Image(models.Model):
....
dropcode = property(lambda self: "drop_img")
</code></pre>
<p>对于无法编辑<code>models.py</code>(例如<code>User</code>模型)的现有模型,请将类似这样的代码添加到您自己应用程序的<code>models.py</code>中:</p>
<pre><code>from django.contrib.auth.models import User
class UserMixin:
dropcode = property(lambda self: "drop_user")
User.__bases__ += (UserMixin,)
</code></pre>
<p>然后在模板中,使用<code>if</code>标记检查项目是否有dropcode。因此,可以消除<code>droppable_models</code>设置:</p>
<pre><code><div class="droppable"{% if item.dropcode %} dropcode="{{item.dropcode}}"{% endif %}>{{item}}</div>
</code></pre>