Я пытаюсь развернуть приложение django на виртуальном сервере, на котором запущен ubuntu 16.04.django: Как избежать ошибки разрешения при миграции
python manage.py makemigrations
приводит к следующему TRACEBACK, после того, как некоторые модели и поля были созданы:
Traceback (most recent call last):
File "manage.py", line 12, in <module>
execute_from_command_line(sys.argv)
File "/home/sysadmin/.virtualenvs/django/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 353, in execute_from_command_line
utility.execute()
File "/home/sysadmin/.virtualenvs/django/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 345, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/sysadmin/.virtualenvs/django/local/lib/python2.7/site-packages/django/core/management/base.py", line 348, in run_from_argv
self.execute(*args, **cmd_options)
File "/home/sysadmin/.virtualenvs/django/local/lib/python2.7/site-packages/django/core/management/base.py", line 399, in execute
output = self.handle(*args, **options)
File "/home/sysadmin/.virtualenvs/django/local/lib/python2.7/site-packages/django/core/management/commands/makemigrations.py", line 150, in handle
self.write_migration_files(changes)
File "/home/sysadmin/.virtualenvs/django/local/lib/python2.7/site-packages/django/core/management/commands/makemigrations.py", line 179, in write_migration_files
with open(writer.path, "wb") as fh:
IOError: [Errno 13] Permission denied: u'/home/sysadmin/public_html/aegee-stuttgart.org/aegeewww/migrations/0001_initial.py'
Я также попытался:
sudo python manage.py makemigrations
Но так как я использую виртуальную среду, я получите следующую ошибку, поскольку django не установлен в системной системе:
ImportError: No module named django.core.management
Как исправить эту ошибку? Путь python распознается правильно, и django, очевидно, установлен в venv.
Как мне установить разрешения для пользователя?
Спасибо!
На первых: спасибо! Это было довольно просто. Вещь есть, есть общий совет, в какой папке пользователю нужны права на запись, а на каких нет? или мне просто нужно предоставить разрешения для определенных папок, каждый раз, когда я сталкиваюсь с этой проблемой? Или это будет единственный раз, когда это произойдет? – setchock
В общем, вы должны запустить проект django у пользователя, у которого есть доступ к каталогу с проектом. –
@EugeneSoldatov благодарит брата, вы спасли мое время :) –