代码之家  ›  专栏  ›  技术社区  ›  Lonto81

Python上的Django项目

  •  2
  • Lonto81  · 技术社区  · 10 年前

    我将在本地机器上运行良好的应用程序上传到了pythonywhere。我让它开始工作,但它没有显示我的博客主页,而是显示“它工作了,欢迎来到Django”页面。有人能帮我吗?

    2 回复  |  直到 10 年前
        1
  •  2
  •   hwjp    10 年前

    将应用程序上传到PythonAnywhere的两个主要障碍往往是获得正确的django版本和正确的WSGI配置。

    对于前者,我们建议使用virtualenv。这里有详细的操作指南: https://www.pythonanywhere.com/wiki/Virtualenvs

    对于wsgi文件,这里提供了正确导入的详细指南: https://www.pythonanywhere.com/wiki/DebuggingImportError

        2
  •  0
  •   magula    6 年前

    好的,我明白了。下面是我所做的:


    1) 如果Django shell坚持在模型名称前面加上“magula4”,那么在创建表时为什么不在表名称前面加magula4呢?单击pythonywhere数据库选项卡上的mesas76$magula4数据库:

    mysql> CREATE TABLE mesas676$magula4.cw_operator (id INT, name CHAR(255), slug CHAR(255));
    mysql> INSERT INTO mesas676$magula4.cw_operator (id,name,slug) VALUES(4255,'ARMER M B', 'armermb');
    mysql> SELECT * FROM mesas676$magula4.cw_operator;
    
    | id   | name            | slug          |
    | 4255 | ARMER M B       | armermb       |
    

    2) 根据需要更改TABLE,直到您拥有Django模型中的所有字段,例如:

    mysql> ALTER TABLE mesas676$magula4.cw_operator ADD COLUMN wells BOOLEAN;

    3) 将Django DATABASES设置更改为magula4:

    DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql', 'NAME': 'mesas676$magula4', 'USER': 'mesas676', 'PASSWORD' : bigsecretR5%t*', 'HOST': 'mesas676.mysql.pythonanywhere-services.com', 'PORT': '3306', } }

    4) Django外壳:

    `$ ./manage.py shell
    In [4]: from cw.models import *
    In [5]: o=Operator.objects.get(id=4255)
    In [6]: o.name
    Out [14]: 'ARMER M B'`
    

    万岁!