Django管理员自定义页面和功能

时间:2014-01-17 13:20:16

标签: python django bash admin

我是(新手)在Django工作,并希望创建两个不依赖于模型/数据库表的功​​能。此应用程序的基础是作为Python应用程序的基于Web的包装器。

功能如下:

  1. 我希望能够将ConfigObj文本文件加载到页面中并在再次保存之前编辑它的配置。
  2. 我希望能够调用命令行python / bash脚本并在页面上显示它们的输出 - 就像PHP中的exec一样。
  3. 目前我正在处理简单的自定义管理页面,而不使用此处所述的模型:

    Django admin, section without "model"?

    这是正确的方向吗?我不确定代理表是否适用,因为我希望的功能与任何数据无关。

    到目前为止,我已查看is it possible to create a custom admin view without a model behind it和其他一些链接。目前我有:

    main/urls.py

    url(r'^admin/weectrl', include('weectrl.urls')),
    

    weectrl/urls.py

    相关联
    from weectrl import views
    
    urlpatterns = patterns('',
        (r'^admin/weectrl/manage/$', weectrl_manage_view),
        (r'^admin/weectrl/config/$', weectrl_config_view),
    )
    

    指向weectrl/views.py

    def weectrl_manage_view(request): 
        r = render_to_response('admin/weectrl/manage.html', context, RequestContext(request))
        return HttpResponse(r)
    
    def weectrl_config_view(request):
        r = render_to_response('admin/weectrl/config.html', context, RequestContext(request))
        return HttpResponse(r)
    

    当前错误消息为name 'weectrl_manage_view' is not defined

1 个答案:

答案 0 :(得分:0)

好的,找到了有用的东西。

在主url.py

 url(r'^admin/weectrl/', include('weectrl.urls')), 

在app / urls.py

urlpatterns = patterns('', 
  url(r'^config/$', views.config, name='config'), 
  url(r'^manage/$', views.manage, name='manage'),
) 

并在app / views.py

def config(request): 
  context = "" 
  return render(request, 'weectrl/config.html', context) 

def manage(request): 
  context = "" 
  return render(request, 'weectrl/manage.html', context) 

html文件位于app / templates / app / ...