我有一个想要在admin下使用的对象,而不是一个继承Models.Model的模型.如果我让它继承Models.Model,这个对象将在数据库中创建一个我不需要的表.我只想让这个物体留在内存中.

我从stack overflow的好人那里得到的一个解决方案是创建管理视图,通过admin下的modelAdmin(admin.site.register())注册这些自定义视图.py,并使用这个类似模型的对象作为动态数据存储(在内存中).

因为这个类似模型的对象不是从模型继承的.模特,管理员.地点register()(在admin.py下)不接受它,并在我try 在浏览器中访问它时显示"type"对象不可编辑"错误.

推荐答案

谢谢大家的帮助.我提出的解决方案(当然是在你的帮助下:)如下:

我有两个自定义模板:

   my_model_list.html
   my_model_detail.html

在视图下.py:

class MyModel(object):
    # ... Access other models
    # ... process / normalise data 
    # ... store data

@staff_member_required
def my_model_list_view(request) #show list of all objects
    #. . . create objects of MyModel . . .
    #. . . call their processing methods . . .
    #. . . store in context variable . . . 
    r = render_to_response('admin/myapp/my_model_list.html', context, RequestContext(request))
    return HttpResponse(r)

@staff_member_required
def my_model_detail_view(request, row_id) # Shows one row (all values in the object) in detail     
    #. . . create object of MyModel . . .
    #. . . call it's methods . . .
    #. . . store in context variable . . . 
    r = render_to_response('admin/myapp/my_model_detail.html', context, RequestContext(request))
    return HttpResponse(r)

在django主URL下.py:

urlpatterns = patterns( 
    '',
    (r'^admin/myapp/mymodel/$', my_model_list_view),
    (r'^admin/myapp/mymodel/(\d+)/$', my_model_detail_view),
    ( r'^admin/', include( admin.site.urls ) )
)

Django相关问答推荐

如何在Django上创建ManyToMany管理面板?

在Django的个人页面中的问题

如何从列中捕获数据并将其添加到下拉菜单中,以便表单填充另一个表

django-filter compose 过滤的 url

Templatetag 在 Django 4.2 模板 IF 条件中不起作用

当前路径 **/POST 与其中任何一个都不匹配

通过get_form_kwargs将请求传递给Django表单未能使表单访问self.request.user.

Django 和 HTML 无法从指定时间开始视频

是否可以在 Django 中重命名应用程序的组名?

根据模型属性获取django对象id

在 Django 的 ORM 中访问存储过程的最佳方法是什么

Django中的单表继承

Django SMTPAuthenticationError

可以在 github 页面上托管 django 站点吗?

在 django 模板中访问元组

Django - 如何从模型实例中获取管理员 URL

Django manage.py:在其依赖之前应用迁移

如何重置 PostgreSQL 表上的 ID 序列

Django 模型方法 - create_or_update

APIView 类和视图集类之间的区别?