2016-02-03 20 views
6

मैं कैसे Django से एक अजगर स्क्रिप्ट चलाने के लिए पर इस पोस्ट को देखा है: जब python manage.py runscript myscript चल http://www.djangotutsme.com/how-to-run-python-script-from-django/
निम्न त्रुटि मैं उदाहरण की कोशिश की लेकिन मिल । मेरे पास पाइथन 2.7 है, Django 1.10 और django एक्सटेंशन 1.6.1 स्थापित है।अजगर त्रुटि गुण जब स्क्रिप्ट चलाने: प्रकार वस्तु 'BaseCommand' कोई विशेषता 'option_list'

Traceback (most recent call last): 
    File "manage.py", line 10, in <module> 
    execute_from_command_line(sys.argv) 
    File "/usr/lib/python2.7/site-packages/Django-1.10.dev20151201151517-py2.7.egg/django/core/management/__init__.py", line 349, in execute_from_command_line 
    utility.execute() 
    File "/usr/lib/python2.7/site-packages/Django-1.10.dev20151201151517-py2.7.egg/django/core/management/__init__.py", line 341, in execute 
    self.fetch_command(subcommand).run_from_argv(self.argv) 
    File "/usr/lib/python2.7/site-packages/Django-1.10.dev20151201151517-py2.7.egg/django/core/management/__init__.py", line 193, in fetch_command 
    klass = load_command_class(app_name, subcommand) 
    File "/usr/lib/python2.7/site-packages/Django-1.10.dev20151201151517-py2.7.egg/django/core/management/__init__.py", line 40, in load_command_class 
    module = import_module('%s.management.commands.%s' % (app_name, name)) 
    File "/usr/lib64/python2.7/importlib/__init__.py", line 37, in import_module 
    __import__(name) 
    File "/usr/lib/python2.7/site-packages/django_extensions-1.6.1-py2.7.egg/django_extensions/management/commands/runscript.py", line 6, in <module> 
    from django_extensions.management.email_notifications import \ 
    File "/usr/lib/python2.7/site-packages/django_extensions-1.6.1-py2.7.egg/django_extensions/management/email_notifications.py", line 10, in <module> 
    class EmailNotificationCommand(BaseCommand): 
    File "/usr/lib/python2.7/site-packages/django_extensions-1.6.1-py2.7.egg/django_extensions/management/email_notifications.py", line 49, in EmailNotificationCommand 
    **option_list = BaseCommand.option_list + (
AttributeError: type object 'BaseCommand' has no attribute 'option_list'** 

कोई विचार क्या समस्या है? क्या यह django में एक बग है?

+0

क्या आप मेरीस्क्रिप्ट की सामग्री पोस्ट कर सकते हैं? – abidibo

उत्तर

9

BaseCommand.option_list Django 1.8 में बहिष्कृत किया गया है और Django 1.10 में हटा दिया गया है। ऐसा लगता है कि Django- एक्सटेंशन has been updated, लेकिन तब से एक नई रिलीज नहीं हुई है।

आप मास्टर शाखा से django-एक्सटेंशन स्थापित करने का प्रयास कर सकते हैं, लेकिन वर्तमान में 1.9.2 के Django की नवीनतम रिलीज का उपयोग करना बेहतर विचार होगा। Django 1.10 अभी तक जारी नहीं किया गया है, और अभी भी विकास में है।

+0

बहुत बहुत धन्यवाद। यह समझ आता है! 1.9.2 इंस्टॉल करने के लिए, क्या मुझे 1.10 को अनइंस्टॉल करने की आवश्यकता है या क्या मैं सिर्फ Django-1.10.dev20151201151517-py2.7.egg/फ़ोल्डर को हटा सकता हूं? –

+1

यदि आपने डीपीए को पाइप का उपयोग करके स्थापित किया है, तो आप 'pip install django == 1.9.2' कर सकते हैं और यह आपके लिए पुराने संस्करण को अनइंस्टॉल कर देगा। मैं आमतौर पर अंडे निर्देशिका को हटाने से बचने की कोशिश करता हूं। – Alasdair

+0

मैं टैरबॉल के लिए एक पायथन इंस्टॉल स्क्रिप्ट का उपयोग कर रहा हूं, जो मेरे एक सहयोगी द्वारा लिखा गया है, जो शानदार ढंग से काम करता है। मैंने इसे मूल रूप से django, django-एक्सटेंशन और छः स्थापित करते समय उपयोग किया। समस्या यह है कि मैं वर्चुअल मशीन का उपयोग कर रहा हूं जहां प्रॉक्सी पर्यावरण सेटिंग्स का उपयोग करना है उदा। pypi.python.org काम नहीं करते हैं, इसलिए पीआईपी स्थापित करने की कोशिश करना बी --- एच का थोड़ा सा है! वैसे भी, स्क्रिप्ट चलाने और पायथन में django के पथ की जांच करने के बाद, ऐसा लगता है कि संस्करण 1.9.2। मान्यता प्राप्त है। –

संबंधित मुद्दे