我正在管理Django(1.11)应用程序,并且我注意到管理页面上某个对象的所有“添加另一个”按钮都没有响应,即单击它们无济于事。这仅发生在一个特定的模型上。
使用按钮上的Inspect Element,我注意到它们似乎与其他模型的管理页面中内联的Add Another按钮不同。
受影响的模型管理页面内联:
<a href="javascript://" class="add-handler djn-add-handler ">
Add another File Upload
</a>
其他工作模型管理页面:
<a href="javascript://" class="add-handler djn-add-handler djn-model-tracker_app-fileupload">
Add another File Upload
</a>
我还是Django的新手,所以我不确定它们是如何生成的。我搜索了整个项目,并在下面的 app_root \ static \ nested_admin \ dist \ nested_admin.js 和 app_root \ static \ nested_admin \ dist \ jquery.djangoformset.js中找到了代码段
49 this.opts = _jquery2.default.extend({}, this.opts, {
50: addButtonSelector: '.djn-add-handler.djn-model-' + inlineModelClassName,
FileUploadInline定义(已在应用程序中的所有模型中重复使用)如下:
class FileUploadInline(NestedStackedInline):
# object of type FileUpload
model = FileUpload
extra = 0
# the attach_file field is a string pointing out the path to a certain document in the media folder
fields = ['attach_file']
def has_change_permission(self, request, obj=None):
if request.user.has_perm('tracker_app.change_fileupload') or request.user.has_perm(
'tracker_app.view_fileupload'):
return True
else:
return False
有人遇到过与Django类似的问题,并且发现了如何解决此问题的方法吗?干杯。