gpt4 book ai didi

python - 在/管理控制台中加载新模型时出现问题

转载 作者:行者123 更新时间:2023-11-29 07:46:50 25 4
gpt4 key购买 nike

我有以下设置:

  • Dreamhost.com 上的域,并为 WSGI 启用了 Passenger
  • Python 3.4
  • virtualenv 中的 Django 1.7
  • MySQL 数据库

我已正确设置所有内容,目前正在学习在 Django 环境中编码。

我已经成功完成了位于此处的 Django 官方教程的第一部分: https://docs.djangoproject.com/en/1.7/intro/tutorial01/并开始研究:https://docs.djangoproject.com/en/1.7/intro/tutorial02/

这导致在“mysite”项目中创建“民意调查”应用程序。

“民意调查”应用程序有 2 个模型:问题和选择。

一切都已成功与 MySQL 同步。

然后我访问了 polls/admin.py 并编写了以下代码:

from django.contrib import admin
from polls.models import Question

admin.site.register(Question)

这应该在管理界面中启用问题模型。

当我尝试访问 mydomain.com/admin 界面时,模型问题没有显示。根据教程应该有。

我在做了一些研究后考虑了一下,然后尝试触摸 mydomain.com/tmp/restart.txt 文件以重新启动 passenger_wsgi.py 文件。调用此文件是为了根据 Passenger 将 Apache 服务器与我的 django 应用程序链接起来。设置。

之后,一切顺利!为什么它有效?我不明白为什么必须重新启动 passenger_wsgi.py

这是passenger_wsgi.py中的代码:

import sys, os
cwd = os.getcwd()
sys.path.append(cwd)

project_location = cwd + "/djtest"

sys.path.insert(0,project_location)
os.environ['LD_LIBRARY_PATH'] = '/home/USERNAME/Python34/lib'

#Switch to new python
PYTHON_EXE = '/home/USERNAME/DOMAIN/env/bin/python3'

if sys.executable != PYTHON_EXE:
os.execl(PYTHON_EXE, PYTHON_EXE, *sys.argv)

sys.path.insert(0,'home/USERNAME/DOMAIN/env/bin')
sys.path.insert(0,'home/USERNAME/DOMAIN/env/lib/python3.4/site-packages/django')
sys.path.insert(0,'home/USERNAME/DOMAIN/env/lib/python3.4/site-packages')

os.environ['DJANGO_SETTINGS_MODULE'] = "djtest.settings"

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

最佳答案

因为这就是 WSGI 的工作原理:Python 代码在进程启动时加载,并且不会在每次请求时刷新(除非明确配置为这样做。)

在遵循本教程时(实际上是在整个开发过程中),您最好在本地进行开发并通过 manage.py runserver 使用内置开发服务器。

关于python - 在/管理控制台中加载新模型时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27527601/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com