8
votes

Comment puis-je corriger cette erreur Django "Type d'exception: Valeur d'exception opératoireRorror: pas de ce tableau?"

J'ai enfin installé toutes les exigences (alors je pense!) d'un projet Django, et j'essaie d'obtenir une installation locale en cours d'exécution sur mon Mac (OSX 10.4).

Je reçois l'erreur suivante:

BlockQuote OpérationError à /
Aucun tableau de ce type: Django_Content_Type
Méthode de demande: Obtenez

URL de la demande: http://127.0.0.1:8000/

Type d'exception: OperationalError
Valeur d'exception:
Aucun tableau de ce type: Django_Content_Type
Emplacement de l'exception: /USERSERS/DIESEL/DESKTOP/DJANGOWORK/PINAX-EV/LIB/PYTHON2.5/SITE-PACKAGES/DJANGO/DB/Backends/sqlite3/base.py
En exécutant, ligne 170
Exécutif en python: / Utilisateurs / Diesel / Bureau / Djangowork / Pinax-Ev / Bin / Python
Version Python: 2.5.1


0 commentaires

3 Réponses :


11
votes
  • Avez-vous exécuté ./ manage.py syncdb Pour créer toutes vos tables?
  • Avez-vous django.contrib.contentTypes dans votre installation installée dans paramètres.py ?

    comme une troisième option improbable:

    • Votre projet / application utilise-t-il l'application Django "South"? Si tel est le cas, vous auriez également besoin d'exécuter ./ manage.py migrer pour vous assurer que toutes les tables sont créées.

      Oublier l'un de ces éléments causerait la ou les tableaux de contentype ne pas être générés.


6 commentaires

Merci! J'ai fini par comprendre le ./Manage.py Syncdb pour créer des tables ... Bien que, pour une raison quelconque, la commande "migrer" n'est pas disponible pour moi ... (J'utilise SQLite3, mais je passe à mysql ce soir sur ma machine locale). En fait, je pense que j'ai besoin de "sud" où puis-je trouver ça? Merci!


La commande migrer est ajoutée par Sud. Vous pouvez en savoir plus sur le sud ici: sud.aeracode.org


Toute autre raison pour laquelle je voudrais obtenir cette erreur? J'ai vérifié toutes les options, mais aucun d'entre eux ne semble aider. C'est la ligne où il va mal: 'content_type_id': contenttype.Object.get_for_model (modèle) .pk,


@Sam Stoelinga Cette ligne est probablement appelée d'une manière ou d'une autre avant que les tables soient correctement créées


Remarque: Syncdb a été supprimé dans Django 1.9


Voir Cette réponse pour l'alternative à Syncdb dans django 1.9+



13
votes

Utilisation de Django version 1.10, je devais effectuer:

python manage.py migrate --run-syncdb


0 commentaires

0
votes

Cette erreur vient lorsque vos informations de table ne sont pas présentes dans la base de données ou que vous avez un conflit avec votre base de données existante. Par exemple, vous avez modifié votre nom de colonne de base de données ou votre nom de base de données. Les étapes ci-dessous vous aideront à vous débarrasser de cette erreur.

  1. Recherchez INSTALLÉ_APPS = [] dans le fichier " SETTING.PY ", votre nom d'application doit être là. pour ex: installé_apps = ['app' / {Quel que soit votre nom d'application dans une virgule inversée]

  2. exécutez les commandes:

    Python Manage.py Makemigrations app (quel que soit votre nom d'application, mon cas - "app")

    python manage.py migrate

    python manage.py runserver


0 commentaires