开发者

Django App Not Showing up in Admin Interface

I'm currently moving from my development server to an Apache web production server.

I've tried doing the following just by copying it over and I can login to the admin panel but it doesn't show up.

My admin.py in my app looks like this:

    import models
    from djan开发者_如何学Gogo.contrib import admin

    admin.site.register(models.Organization)

And here is my models.py

from django.db import models

class Organization(models.Model):
    name = models.CharField(max_length=100)
    website = models.URLField()
    azon_code = models.CharField(max_length=50)
    gooe_code = models.CharField(max_length=50)
    cj_code = models.CharField(max_length=50)

I've resyned the database and restarted apache as well thinking that might do something.


Aren't you supposed to import like:

from mysite.myapp.models import Organization
admin.site.register(Organization)


For me it was very silly reason. I have enabled permissions. Admin user didn't have the permission to access the models.

I gave the permission to admin user. It worked.


For those who are visiting this question, the above answer doesn't work directly in the current Django version(1.7.7).

The answer to the above question becomes:

from myapp.models import Organization
admin.site.register(Organization)


Another possible reason for not showing app in admin page is Apache doesn't have permissions. Sometimes we create an app with permission that Apache can't access it. If Apache doesn't have access it will not show. For linux users require to change app permissions.

sudo chown -R www-data:www-data app_name

This command will give permisson to Apache to access app folder recursively.


in your admin.py file inside your main( first and default ) app of your project do this

in my case i have 3 app as follow

cityapp,stateapp,countryapp

so in my admin.py file i will add following line

from django.contrib import admin
from stateapp.models import State
from countryapp.models import Country
from cityapp.models import City

admin.site.register(Country)
admin.site.register(State)
admin.site.register(City)

it works in my case see

Django App Not Showing up in Admin Interface


Your Imports in the admin.py is wrong i guess Try this way

from .models import *

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜