1. ホーム
  2. django

[解決済み] django の管理画面にモデルが表示されない

2023-07-26 10:52:41

質問

私は自分のファンドのためにいくつかのdjangoアプリやものを作ったことがあり、今のところすべてうまくいっています。

今、私は新しいプロジェクト(django 1.2.1)を作成し、最初の瞬間から問題に遭遇しています。

新しいアプリ - game と新しいモデル Game を作成しました。admin.pyを作成し、関連するものをそこに入れました。syncdbを実行し、adminにチェックインしようとしました。モデルはそこに表示されませんでした。

私はチェックとダブルチェックを進め、過去の同様のスレッドに目を通しました。 登録されたモデルが管理画面に表示されない Django アプリが管理画面に表示されない

しかし、私が知る限り、それらは私の助けにもなりません。おそらく、他の誰かが私のためにこれを指摘することができます。

ゲームアプリのmodels.pyです。

# -*- coding: utf-8 -*-
from django.db import models

class Game(models.Model):
      type = models.IntegerField(blank=False, null=False, default=1)
      teamone = models.CharField(max_length=100, blank=False, null=False)
      teamtwo = models.CharField(max_length=100, blank=False, null=False)
      gametime = models.DateTimeField(blank=False, null=False)

ゲームアプリのadmin.pyです。

# -*- coding: utf-8 -*-
from jalka.game.models import Game
from django.contrib import admin

class GameAdmin(admin.ModelAdmin):
      list_display    = ['type', 'teamone', 'teamtwo', 'gametime']

admin.site.register(Game, GameAdmin)

プロジェクトのsettings.pyです。

MIDDLEWARE_CLASSES = (
    'django.middleware.common.CommonMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
)

ROOT_URLCONF = 'jalka.urls'

TEMPLATE_DIRS = (
      "/home/projects/jalka/templates/"
)

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.admin',
    'game',
)

urls.pyを使用します。

from django.conf.urls.defaults import *

# Uncomment the next two lines to enable the admin:
from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
      # Example:
      # (r'^jalka/', include('jalka.foo.urls')),
      (r'^admin/', include(admin.site.urls)),
)

どのように解決するのですか?

settings.pyでアプリのincludeを変更してみてください。

からです。

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.admin',
    'game',
    ....

へ。

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.admin',
    'YOUR_PROJECT.game',# OR 'YOUR_PROJECT.Game'