python sqlite在终端-django中使用

say*_*yth 14 sqlite django ubuntu

如何在SQlite for Django中查看我的数据库.

我正在关注ubuntu上的django教程.

现在它的工作正常除外.跑完之后

python manage.py sql polls
Run Code Online (Sandbox Code Playgroud)

然后

python manage.py syncdb
Run Code Online (Sandbox Code Playgroud)

那么我想我会检查daabase和表,但这是问题所在:

sqlite> .databases
seq  name             file                                                      
---  ---------------  ----------------------------------------------------------
0    main                                                                       
1    temp    
Run Code Online (Sandbox Code Playgroud)

没有mysite数据库.我怎么能看到数据库?

Cal*_*eng 17

您的mysite数据库将位于项目根目录中的文件系统中(django项目的最顶层文件夹),如果这是您的settings.py样子: -

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
        'NAME': 'mysite',                      # Or path to database file if using sqlite3.
        'USER': '',                      # Not used with sqlite3.
        'PASSWORD': '',                  # Not used with sqlite3.
        'HOST': '',                      # Set to empty string for localhost. Not used with sqlite3.
        'PORT': '',                      # Set to empty string for default. Not used with sqlite3.
    }
}
Run Code Online (Sandbox Code Playgroud)

如果您启用了django admin,并为您的民意调查应用程序编写了相应的admin.py文件,您应该能够在django admin中添加,编辑,删除或查看您的民意调查数据.

您当然可以mysite在django项目根目录(顶层文件夹)中加载数据库,并使用类似http://sqlitebrowser.sourceforge.net/的内容查看其中的数据.

在你的ubuntu终端的命令行中,如果你确实正确地执行了syncdb,你应该看到类似的东西: -

calvin$ ./manage.py syncdb
Creating tables ...
Creating table auth_permission
Creating table auth_group_permissions
Creating table auth_group
Creating table auth_user_user_permissions
Creating table auth_user_groups
Creating table auth_user
Creating table django_content_type
Creating table django_session
Creating table django_site

You just installed Django's auth system, which means you don't have any superusers defined.
Would you like to create one now? (yes/no): yes
Username (leave blank to use 'calvin'): calvin
E-mail address: myemail@myemail.com
Password: 
Password (again): 
Superuser created successfully.
Installing custom SQL ...
Installing indexes ...
Installed 0 object(s) from 0 fixture(s)
Run Code Online (Sandbox Code Playgroud)

你提到你已经./manage.py syncdb正确运行了,所以你应该能够通过执行来访问你的sqlite数据库sqlite mysite,如下所示: -

calvin$ sqlite3 mysite 
SQLite version 3.7.14.1 2012-10-04 19:37:12
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> 
Run Code Online (Sandbox Code Playgroud)

.tables你的sqlite shell中的命令会给你: -

sqlite> .tables
auth_group                  auth_user_user_permissions
auth_group_permissions      django_content_type       
auth_permission             django_session            
auth_user                   django_site               
auth_user_groups          
sqlite> 
Run Code Online (Sandbox Code Playgroud)


sha*_*nkS 9

如果已经同步,我使用了选项'dbshel​​l':

python manage.py dbshell

SQLite版本3.8.2 2013-12-06 14:53:30输入".help"作为说明输入以";"结尾的SQL语句

sqlite> .databases