Django:尝试编写只读数据库

Jon*_*Jon 4 python apache django django-1.7

我刚刚创建了一个Django项目

python manage.py startapp smartrecruitment
Run Code Online (Sandbox Code Playgroud)

然后我运行了db sync

 python manage.py syncdb
 Operations to perform:
 Apply all migrations: admin, contenttypes, auth, sessions
 Running migrations:
   Applying contenttypes.0001_initial... OK
   Applying auth.0001_initial... OK
   Applying admin.0001_initial... OK
   Applying sessions.0001_initial... OK
Run Code Online (Sandbox Code Playgroud)

并添加了我的超级用户,但我无法在浏览器中访问/ admin.我尝试过以下命令来授予apache权限,但没有运气.

sudo chown apache <folder_containing_db.sqlite3>
sudo chown apache db.sqlite3
Run Code Online (Sandbox Code Playgroud)

小智 11

更改项目目录和数据库文件的所有者 www-data

chown www-data:www-data /home/username/Django    
chown www-data:www-data /home/username/Django/db.sqlite  
Run Code Online (Sandbox Code Playgroud)

  • 这不是一个好习惯。您的www-data用户对您的数据库具有写权限(并且需要这样做),因此它可以工作,但是您还向它授予了整个代码库的写权限,这绝对是不行的 (2认同)