2015-05-18 10 views
8

Posiadałem aplikację testową Django-oscar na mojej stronie w witrynie example.com. Chciałem przenieść to na example.com: 8000 i uruchomić inny projekt pod adresem example.com. Udało mi się wykonać drugą część, a kiedy wprowadzasz example.com, możesz zobaczyć nowszy projekt django, ale chodzi o to, że pierwszy projekt django, który był piaskownicą Django-Oscara, nie zareaguje poprawnie.brak takiej kolumny: django_content_type.name

kiedy wchodzi example.com:8000 widzisz aktualny dziennik diagnostyczny:

no such column: django_content_type.name 
Request Method: GET 
Request URL: http://example.com:8000/fa/ 
Django Version: 1.7.8 
Exception Type: OperationalError 
Exception Value:  
no such column: django_content_type.name 
Exception Location: /usr/local/lib/python2.7/dist-packages/django/db/backends/sqlite3/base.py in execute, line 485 
Python Executable: /usr/bin/python 
Python Version: 2.7.3 
Python Path:  
['/var/www/setak/setakenv/setakmain/django-oscar/sites/sandbox', 
'/usr/lib/python2.7', 
'/usr/lib/python2.7/plat-linux2', 
'/usr/lib/python2.7/lib-tk', 
'/usr/lib/python2.7/lib-old', 
'/usr/lib/python2.7/lib-dynload', 
'/usr/local/lib/python2.7/dist-packages', 
'/usr/lib/python2.7/dist-packages', 
'/usr/lib/python2.7/dist-packages/PIL', 
'/usr/lib/python2.7/dist-packages/gst-0.10', 
'/usr/lib/python2.7/dist-packages/gtk-2.0', 
'/usr/lib/python2.7/dist-packages/ubuntu-sso-client', 
'/usr/lib/python2.7/dist-packages/ubuntuone-client', 
'/usr/lib/python2.7/dist-packages/ubuntuone-control-panel', 
'/usr/lib/python2.7/dist-packages/ubuntuone-couch', 
'/usr/lib/python2.7/dist-packages/ubuntuone-installer', 
'/usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol'] 

teraz google ten błąd i nie miałem żadnych cennych wyników.

Również, gdy biegnę

sudo python manage.py migrate 

dodaje się dzieje, co również nie mogę znaleźć żadnego poprawną rozdzielczość do Fix:

Operations to perform: 
    Synchronize unmigrated apps: reports_dashboard, treebeard, oscar, communications_dashboard, reviews_dashboard, debug_toolbar, widget_tweaks, offers_dashboard, catalogue_dashboard, sitemaps, compressor, django_extensions, dashboard, thumbnail, haystack, ranges_dashboard, checkout, gateway, django_tables2 
    Apply all migrations: customer, promotions, shipping, wishlists, offer, admin, sessions, contenttypes, auth, payment, reviews, analytics, catalogue, flatpages, sites, address, basket, partner, order, voucher 
Synchronizing apps without migrations: 
    Creating tables... 
    Installing custom SQL... 
    Installing indexes... 
Running migrations: 
    No migrations to apply. 
Traceback (most recent call last): 
    File "manage.py", line 10, in <module> 
    execute_from_command_line(sys.argv) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 385, in execute_from_command_line 
    utility.execute() 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 377, in execute 
    self.fetch_command(subcommand).run_from_argv(self.argv) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/base.py", line 288, in run_from_argv 
    self.execute(*args, **options.__dict__) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/base.py", line 338, in execute 
    output = self.handle(*args, **options) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/commands/migrate.py", line 165, in handle 
    emit_post_migrate_signal(created_models, self.verbosity, self.interactive, connection.alias) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/sql.py", line 268, in emit_post_migrate_signal 
    using=db) 
    File "/usr/local/lib/python2.7/dist-packages/django/dispatch/dispatcher.py", line 198, in send 
    response = receiver(signal=self, sender=sender, **named) 
    File "/usr/local/lib/python2.7/dist-packages/django/contrib/auth/management/__init__.py", line 83, in create_permissions 
    ctype = ContentType.objects.db_manager(using).get_for_model(klass) 
    File "/usr/local/lib/python2.7/dist-packages/django/contrib/contenttypes/models.py", line 58, in get_for_model 
    " is migrated before trying to migrate apps individually." 
RuntimeError: Error creating new content types. Please make sure contenttypes is migrated before trying to migrate apps individually. 

Aktualizacja 1: Jestem również za pomocą Django 1.7.8 dla tego.

update 2: Zmieniłem wersję Django na 1.8.1, działały polecenia migracyjne i migracyjne. Wtedy wpadłem serwer ponownie, a teraz mam ten błąd w moim dzienniku: (I również usunięte Apache ustawienia, ponieważ były one nieistotne!)

Traceback (most recent call last): 
    File "/usr/lib/python2.7/wsgiref/handlers.py", line 85, in run 
    self.result = application(self.environ, self.start_response) 
    File "/usr/local/lib/python2.7/dist-packages/django/contrib/staticfiles/handlers.py", line 63, in __call__ 
    return self.application(environ, start_response) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/wsgi.py", line 170, in __call__ 
    self.load_middleware() 
    File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 50, in load_middleware 
    mw_class = import_string(middleware_path) 
    File "/usr/local/lib/python2.7/dist-packages/django/utils/module_loading.py", line 26, in import_string 
    module = import_module(module_path) 
    File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module 
    __import__(name) 
ImportError: No module named transaction 
+0

Próbowałaś co sugeruje Django i migrować contenttypes pierwszy? –

+0

@ ger.s.brett tak, zrobiłem. ten sam błąd się dzieje! –

+0

Czy rozpocząłeś od wersji Django 1.8, a później do wersji django 1.7.8? – karthikr

Odpowiedz

15

mogłem wreszcie rozwiązać mój problem. Problem polegał na tym, że użyłem django 1.8 do uruchomienia manage.py migrate, a projekt został opracowany pod django 1.7.1, więc migracje rozwiały się.

Po zainstalowaniu django 1.8.1 ponownie uruchomiłem manage.py migrate contenttypes 0001, następnie odinstalowałem django 1.8.1, zainstalowałem django 1.7.8 i uruchomiłem manage.py runserver i wszystko wróciło do normy i działało dobrze.

+1

Ta odpowiedź pomogła mi znaleźć rozwiązanie, mimo że nie mogłem jej dokładnie przestrzegać, ponieważ nie mogłem uruchomić żadnej komendy manage.py bez wyświetlenia tego błędu (aplikacja, od której wszystko inne zależało, próbowała uzyskać dostęp do typów zawartości podczas jej inicjowania, nawet jeśli nie zdefiniowano żadnej bazy danych). Zamiast tego utworzyłem osobny plik ustawień "initial.py", który miał tylko aplikacje django zdefiniowane w INSTALLED_APPS. Najpierw mogłem uruchomić migrację przy użyciu tego modułu ustawień, a następnie przejść do mojego zwykłego modułu ustawień, aby ukończyć wszystkie migracje związane z konkretnym projektem. – Brett

+0

Ten wyjątek dotyczy błędów związanych z operacjami MySQL. Na przykład: zbyt wiele połączeń; nazwa hosta nie mogła zostać rozwiązana; zły uścisk dłoni; serwer się wyłącza, błędy komunikacji. –

0

Miałem ten sam problem. W moim przypadku użyłem Django 1.10 do utworzenia mojej lokalnej bazy danych, ale muszę użyć starej wersji Django (1.7), aby wykonać kilka testów, więc usunąłem moją lokalną bazę danych i uruchomiłem manage.py migrate z Django 1.7, po czym błąd już minął.

Alternatywnie, zamiast usuwania lokalnej bazy danych, bazy danych mogą być przechowywane i przeniósł się z powrotem do projektu po to potrzebne, gdy prowadzony projekt Django 1.10

Powiązane problemy