साथ ansible में django_manage मैं के लिए Django manage.py मॉड्यूल http://docs.ansible.com/django_manage_module.htmlकैसे: python3
के लिए इस अनुसरण कर रहा हूँ जैसे मेरे कार्यों में से एक लगता है कि -
- name: Django migrate
django_manage: command=migrate
app_path={{app_path}}
settings={{django_settings}}
tags:
- django
इस को Python2 साथ पूरी तरह से ठीक काम करता है (ubuntu में डिफ़ॉल्ट) लेकिन जब मैं python3-Django परियोजना के साथ की कोशिश यह इस त्रुटि यह Ansible लगता है से त्रुटि
failed: [123.456.200.000] => (item=school) => {"cmd": "python manage.py makemigrations --noinput school --settings=myproj.settings.production", "failed": true, "item": "school", "path": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games", "state": "absent", "syspath": ["/home/ubuntu/.ansible/tmp/ansible-tmp-1432039779.41-30449122707918", "/usr/lib/python2.7", "/usr/lib/python2.7/plat-x86_64-linux-gnu", "/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"]}
msg:
:stderr: Traceback (most recent call last):
File "manage.py", line 8, in <module>
from django.core.management import execute_from_command_line
ImportError: No module named django.core.management
फेंकता Bydefault Python2 का उपयोग करता है। क्या हम इसे पायथन 3 या किसी अन्य कामकाज में बदल सकते हैं?
पुनश्च: पिप फ्रीज सुनिश्चित करना है कि Django 1.8 स्थापित किया है (pip3 का उपयोग कर python3 के लिए)
सुझाव: जब मैं [email protected]:/srv/myproj$ python3 manage.py migrate
चलाने यह ठीक काम करता है। तो मैं जैसे
- name: Django migrate
command: python3 manage.py migrate
tags:
- django
सीधे आदेश पारित करने कुछ के बारे में सोच रहा हूँ, लेकिन मैं कैसे परियोजना पथ या manage.py फ़ाइल के पथ से पारित है, वहाँ केवल एक सेटिंग पारित करने के लिए विकल्प, --settings=myproject.settings.main
की तरह कुछ है।
क्या हम प्रत्यक्ष आदेश पास करके कर सकते हैं?
यदि आप वर्चुअल वातावरण का उपयोग कर रहे हैं, तो 'virtualenv' पैरामीटर का उपयोग करके वर्चुअल वातावरण में पाइथन 3 दुभाषिया का उपयोग करने की उम्मीद है। – Alasdair
@ अलास्डेयर: नहीं! मैं virtualenv का उपयोग नहीं कर रहा हूँ। सब कुछ व्यवस्थित है। 'sudo pip3' –
micheal
हाँ, मैंने अनुमान लगाया था कि जब मैंने आपके प्रश्न में 'pip3' देखा था, लेकिन फिर भी टिप्पणी छोड़ने का फैसला किया क्योंकि यह किसी और की मदद कर सकता है। आशा है कि आप एक समाधान पता लगाएंगे। स्थानीय मशीन पर – Alasdair