如何在django admin中实现Dashboard?

时间:2015-04-29 08:17:56

标签: python django admin dashboard

如何在django admin中实现Dashboard?

如果我在django中有以下模型。有没有办法,而不是常规的模型列表,我可以在管理页面中有一个搜索框,用他的名字搜索学生并显示他的特定细节......

class MStudent(models.Model):
    enroll_no = models.IntegerField()
    Name = models.CharField(max_length=200)
    photo = models.ImageField(upload_to="static",blank = True)
    def __str__(self):
       return self.FName+" "+ self.MName+" "+ self.LName
class MStud_Address_ph_no_email(models.Model):
    enroll_no = models.ForeignKey(MStudent)
    Address = models.CharField(max_length=200)
    Personal_mobile= models.IntegerField()
    Fathers_mobile = models.IntegerField()

    def __str__(self):
         return str(self.enroll_no)

3 个答案:

答案 0 :(得分:0)

来自Django管理员文档:

  

如果您希望更改索引,登录或注销模板,最好创建自己的AdminSite实例(请参阅下文),并更改AdminSite.index_template,AdminSite.login_template或AdminSite.logout_template属性。

因此,您应该创建自己的AdminSite并将其index_template属性设置为您的模板,以实现所需的信息中心。

要提供搜索和搜索结果视图,请参阅adding views to admin sites

答案 1 :(得分:0)

我认为你应该阅读有关admin

的django文档

在您的情况下,如果您想自定义管理员外观或添加额外的功能,您需要通过在模板目录中创建管理文件夹来覆盖所需的管理模板,如admin/index.html

答案 2 :(得分:0)

问:有没有办法,而不是常规的模型列表,我可以在管理页面中有一个搜索框,用他的名字搜索学生并显示他的特定细节?

1)是而不是显示常规模型列表我可以直接重定向到模型Mstudent.using以下代码

urls.py
from django.http import HttpResponseRedirect
url(r'^admin/$',lambda x:HttpResponseRedirect('/admin/yourapp/yourmodel'))

2)使用他的名字搜索学生并显示他的特定细节:

Make  MStud_Address_ph_no_email as inline to MStudent in admin.py.

所以当用户登录django admin时,他会直接看到所有学生的列表,通过选择一个特定的学生,他可以看到他所有的细节。

:)