追加 django 管理者に表示されないモデル




running migrations: no migrations to apply. (12)

Django 1.10 では、最後に(admin.ModelAdmin)を使用してモデルを登録するのに役立ちました

from django.contrib import admin

from .models import YourModel
admin.register(YourModel)(admin.ModelAdmin)

私は自分の資金のためにいくつかのdjangoのアプリやものを止めましたが、これまでのところすべてがうまくいきました。

今私はちょうど新しいプロジェクト(django 1.2.1)を作成し、最初の瞬間からトラブルに遭遇しました。

私は新しいアプリゲームと新しいモデルゲームを作りました。 私はadmin.pyを作成し、それに関連するものを入れました。 Ran syncdbを実行し、管理者にチェックインしました。 モデルはそこに現れなかった。

私は以前の同様のスレッドをチェックしてダブルチェックして読みました: 登録されたモデルは管理者の Django Appに 表示され ません管理インターフェースに 表示され ません

しかし、私が言うことができる限り、彼らは私を助けません。 多分誰かが私のためにこれを指摘することができます。

ゲームアプリの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)),
)

アラン


私は同じ問題を抱えています。 admin.py登録をadmin.pyに追加するためにこれを解決しadmin.py 。 私は余分なクラスを追加する必要はありません。

次のように:

from jalka.game.models import Game
from django.contrib import admin

admin.site.register(Game)

環境:Win10、Django 1.8

django


おそらく非常にまれですが、私が作成したadmin.pyファイルのパーミッションが壊れていて、djangoがそれを読むことができない問題が発生しました。 私はファイルを削除し、それを成功裏に再現しました。

誰かを救う希望、私の問題でここで遭遇するべきか?


私はデジタル海洋を使用しており、この問題にも対処しました。 ソリューションはサービスの再起動でした。 私は使った

サービスガンコーンリスタート

モデルが表示された


考えられる原因の1つは、古いPythonプロセスを閉じないということです。


間違いは、あなたが持っているかどうかを確認するべきあなたの "def"のviews.pyにあるかもしれません

If mymodel.is_valid():
mymodel = model.save()

私はあなたにそれを理解させるように私のコードを提供します

@login_required(login_url='/home/')
def ask_question(request):
user_asking = UserAsking()

if request.method == "POST":
    user_asking = UserAsking(request.POST)

    if user_asking.is_valid():
        user_asking.save()

    return redirect(home)

return render(request, 'app/ask_question.html', {
    'user_asking': user_asking,
})

`UserAskingはフォームです。 私はあなたを助けたと思う


あなたはこれをインポート(インクルード)する必要があります:

from models import *

報告された問題は、管理サイトのモデルの登録をスキップしたことが原因である可能性があります。 これはあなたのアプリケーションの下にadmin.pyファイルを作成して、モデルを登録することでできます:

admin.site.register(MyModel)

Django 2.0でも同じ問題がありました。

次のコードは機能しませんでした:

from django.contrib import admin
from django.contrib.auth.admin import UserAdmin

from users import models

admin.register(models.User, UserAdmin)

それは、

admin.register(models.User, UserAdmin)

になるはずだった

admin.site.register(models.User, UserAdmin)

私は警告を受けなかったので、ここでもこのことを指摘したかっただけです。


私はこれが既に答えられ受け入れられていることを知っていますが、私はこの問題に対する私の解決策が何かを共有するように感じました。

私のINSTALLED_APPSはこのように見えました:

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'core',  # <---- this is my custom app
    # Uncomment the next line to enable the admin:
    'django.contrib.admin',
    'south',
    # Uncomment the next line to enable admin documentation:
    # 'django.contrib.admindocs',
)

私はDjangoの管理アプリの前にアプリを置いて、明らかにそれをその順にロードします。 私は単に管理者の下に私のアプリケーションを移動し、それが表示され始めた:)


私は同じ問題を抱えています。私の開発サーバーモデルを再起動すると、管理ページに表示されます。


うーん... settings.pyのあなたのアプリの変更のインクルードを試してみてください:

から:

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'