django - 追加 - running migrations: no migrations to apply.




モデルはdjangoの管理者に表示されません (10)

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)),
)

アラン


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)

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


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

from models import *

うーん... 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'

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

admin.site.register(MyModel)

私は、私がコマンドラインでsudo service apache2 restartを入力しなかったことを除いて、これらの答えがすべて言ったことを追加したいと思います。変更を有効にするために必要でした。 (私はamazon Webサービスのポート80のライブサーバーでテストしていたので、私もUbuntuオペレーティングシステムを使用していました)。 私はこれが誰かを助けるかもしれないことを望む。


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

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

モデルが表示された


私は同じ問題を抱えています。 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をプロジェクトディレクトリに移動しました。管理画面が更新され、モデルのappディレクトリに戻ってきて、それらはすべて即座に表示されました。 私はPyCharmを使用しているので、それがいくつかの問題を引き起こしているかどうかはわかりません。

私の設定は、Djangoのマニュアルに書かれているとおりです。

models.py

class xxx(models.Model):
    ....
    def __str__(self):  # __str__ for Python 3, __unicode__ for Python 2
        return self.name

admin.py

from .models import xxx
admin.site.register(xxx)

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