2017-05-26 1 views
0

ich mein Modell versuche außerhalb von django zugreifen wie so:Zugang django Modell außerhalb von django

import django 
import sys 
import os 
#from django.db import models 
from companies.models import Entity 

class MyClass(): 

    sys.path.append("mypath") 
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "en_settings") 
    django.setup() 

    urls = Entity.objects.values_list('twitter_url', flat=True)[:10] 
    for u in urls: 
     print u 

ich den Fehler:

No module named companies.models

Wie kann ich mein Modell zugreifen? Danke

+1

Sie Ihre PYTHONPATH hinzufügen müssen geschehen, bevor Sie importieren ... –

+0

@JoranBeasley nicht, dass in meinen Einstellungen mit diesem Wert getan ist: BASE_DIR = os.path.dirname (os.path.dirname (os.path.abspath (__ file__))) – Atma

Antwort

0

Jordan Beasley war in den Kommentaren richtig. Der Import des Modells hat nach django_setup

import django 
import sys 
import os 


class MyClass(): 

    sys.path.append("mypath") 
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "en_settings") 
    django.setup() 
    from companies.models import Entity 
    urls = Entity.objects.values_list('twitter_url', flat=True)[:10] 
    for u in urls: 
     print u