Bugün kafam çok karıştı.Dış python komut dosyasında Django modellerini kullanma
Django uygulama modellerimi python betiğimde kullanmaya çalışıyordum. Burada
yaklaşımımimport os, sys
sys.path.append("/var/www/cloudloon/horizon")
os.environ["DJANGO_SETTINGS_MODULE"] = "openstack_dashboard.settings"
from django.contrib.auth.models import User
neden onun kontrol üzerine bana
ImportError: Could not import settings 'openstack_dashboard.settings' (Is it on sys.path?): cannot import name auth
veren karışıktı ben
export PYTHONPATH=$PYTHONPATH:/var/www/cloudloon/horizon/;
export DJANGO_SETTINGS_MODULE=openstack_dashboard.settings; django-admin.py shell;
ve terminal penceresinden içeren creds denilen aa dosya oluşturdum olduğunu Kredi dosyasının bulunduğu yer,
ve bu django-admin.py kabuğundan, django uygulama modellerimden herhangi birini hata olmadan alabilirim.
Neden python kodumda çalışmıyor?
Django ile işim bitti, yapmanız gereken şey django uygulama modellerime erişecek bir python-daemon komut dosyası oluşturmak.
Django ı çözümler arıyor gibi 1.5
sahip olduğunu Ubuntu 12.04 yılında ile çalışıyorum, ben yaptım bu:
import os, sys
sys.path.append("/var/www/cloudloon/horizon")
sys.path.append("/var/www/cloudloon/horizon/openstack_dashboard")
# os.environ["DJANGO_SETTINGS_MODULE"] = "settings"
os.environ.setdefault("DJANGO_SETTINGS_MODULE",
"openstack_dashboard.settings")
print os.environ["DJANGO_SETTINGS_MODULE"]
for s in sys.path:
print s
from django.contrib.auth.models import User
heres çıkışı: http://paste.openstack.org/show/48787/
gördüğünüz gibi, settings.py'nin bulunduğu dizinin sys.path'ımda bulunması, yine de, openstack_dashboard.settings dosyasını içe aktaramadı.
Herkese teşekkürler.
yönetim komutu ı oluşturmaya çalışıyorum ne için iyi bir fikir değil gibi görünüyor. Python-daemon script'i oluşturmam gerekiyor. Temel olarak, python-daemon komut dosyasını çalıştırmak için "python myscript.py run" komutunu çalıştırmam gerekiyor. Python yönetim komutu bunun için iyi değil. –
Yukarıdaki kodunuzu kullanarak, Bana AttributeError verir: 'str' nesnesinin '__file__' özniteliği yok ' –
@DjangoBot üzgünüz, setup_environ bir dize değil bir modül nesnesi alır. Kod snippet'ini düzelttim. –