PyCharm发现了新的核心Django(而不是应用程序)manage.py任务?

时间:2014-01-21 04:13:41

标签: python django pycharm

我希望在PyCharm 2.7.3中使用更新的Django(1.7.dev)...所以它是我项目的virtualenv中唯一安装的Django版本。

但是,“工具” - > “运行manage.py任务”列表未发现Django本身包含的新命令,如migratemakemigrations。 (根据之前对像South这样的应用程序的经验,我希望所有可用的任务都会被自动发现。)

有没有办法帮助PyCharm 2.7.3发现并使用这些新选项?

2 个答案:

答案 0 :(得分:1)

"工具" - > "运行manage.py任务"没有看到makemigration或migrate参数。

您可以在项目中右键单击manage.py文件来运行manage.py。

使用此输出:

*

*Usage: manage.py subcommand [options] [args]
Options:
  -v VERBOSITY, --verbosity=VERBOSITY
                        Verbosity level; 0=minimal output, 1=normal output,
                        2=verbose output, 3=very verbose output
  --settings=SETTINGS   The Python path to a settings module, e.g.
                        "myproject.settings.main". If this isn't provided, the
                        DJANGO_SETTINGS_MODULE environment variable will be
                        used.
  --pythonpath=PYTHONPATH
                        A directory to add to the Python path, e.g.
                        "/home/djangoprojects/myproject".
  --traceback           Raise on exception
  --no-color            Don't colorize the command output.
  --version             show program's version number and exit
  -h, --help            show this help message and exit
Type 'manage.py help <subcommand>' for help on a specific subcommand.
Available subcommands:
[auth]
    changepassword
    createsuperuser
[django]
    check
    compilemessages
    createcachetable
    dbshell
    diffsettings
    dumpdata
    flush
    inspectdb
    loaddata
    makemessages
    makemigrations
    migrate
    runfcgi
    shell
    sql
    sqlall
    sqlclear
    sqlcustom
    sqldropindexes
    sqlflush
    sqlindexes
    sqlinitialdata
    sqlmigrate
    sqlsequencereset
    squashmigrations
    startapp
    startproject
    syncdb
    test
    testserver
    validate
[sessions]
    clearsessions
[staticfiles]
    collectstatic
    findstatic
    runserver*

*

你可以看到&#34; makemigrations&#34;和&#34;迁移&#34;在django

的可用子命令中

所以你必须&#34;运行&#34; - &gt; &#34;编辑配置&#34;并添加&#34; makemigrations&#34;或者&#34;迁移&#34;在脚本参数

现在运行脚本并运行

答案 1 :(得分:0)

这很可能是因为您在INSTALLED_APPS元组中添加了应用的方式。所以,如果它是这样的:

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # Uncomment the next line to enable the admin:
    'django.contrib.admin',
    # Third Party apps -------------------------------------->
    'south',
    'django_extensions',
    'dajaxice',
    'dajax',
    # My apps ----------------------------------------------->
    'blog',
)

然后应该没有问题,你应该能够找到你正在寻找的命令,如果没有,那么你就有一个bug。但是,如果您安排的事情如此:

DJANGO_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles')

THIRD_PARTY_APPS = (
    'south',
    'django_extensions',
    'dajaxice',
    'dajax',
)

MY_APPS = ('blog', )

INSTALLED_APPS = DJANGO_APPS + THIRD_PARTY_APPS + MY_APPS

然后你有一个问题,2.7因为PyCharm无法理解这一点。所以,我的建议是你按照我开始的方式制作元组。