Django:运行 通过选择对象名称来自管理员的脚本
Django: Run scripts from admin by selecting object's name
我正在使用 Django 1.8 和 Python 2.7.8 创建带有 MySQL 数据库的 Web 界面,我可以只使用管理页面来操作不同的表。假设我有一个包含以下字段的学生对象:姓名、ID 和性别。如何实现这样的功能:
- select 学生姓名: 避免名字错别字
- 单击类似 "Run script"
的按钮
- 触发一个 Python 程序到 运行
我只需要 Python 程序的输出,如:成功或失败。
非常感谢!
您所追求的是管理员操作。你在admin里面写一个自定义函数,然后把函数名赋给admin_actions
属性.
def incomplete_tasks(modeladmin, request, queryset):
queryset.update(completed=False)
incomplete_tasks.short_description = 'Mark as Not Complete'
class TaskAdmin(admin.ModelAdmin):
list_display = ['title', 'completed']
ordering = ['created']
actions = [incomplete_tasks,]
admin.site.register(Task, TaskAdmin)
https://docs.djangoproject.com/en/1.8/ref/contrib/admin/actions/
我正在使用 Django 1.8 和 Python 2.7.8 创建带有 MySQL 数据库的 Web 界面,我可以只使用管理页面来操作不同的表。假设我有一个包含以下字段的学生对象:姓名、ID 和性别。如何实现这样的功能:
- select 学生姓名: 避免名字错别字
- 单击类似 "Run script" 的按钮
- 触发一个 Python 程序到 运行
我只需要 Python 程序的输出,如:成功或失败。
非常感谢!
您所追求的是管理员操作。你在admin里面写一个自定义函数,然后把函数名赋给admin_actions
属性.
def incomplete_tasks(modeladmin, request, queryset):
queryset.update(completed=False)
incomplete_tasks.short_description = 'Mark as Not Complete'
class TaskAdmin(admin.ModelAdmin):
list_display = ['title', 'completed']
ordering = ['created']
actions = [incomplete_tasks,]
admin.site.register(Task, TaskAdmin)
https://docs.djangoproject.com/en/1.8/ref/contrib/admin/actions/