Could not import settings 'myproject.settings' (Is it on sys.path?): No module named pinax

后端 未结 7 1486
天命终不由人
天命终不由人 2020-12-08 23:47

I\'m trying to get pinax working on WebFaction and having so many issues...

[Sun Feb 19 20:01:20 2012] [error] [client 127.0.0.1] mod_wsgi (pid=22796): Excep         


        
相关标签:
7条回答
  • 2020-12-09 00:02

    with Pycharm. I closed "Add content roots to PYTHONATH" and "Add source roots to PYTHONATH". It works.

    0 讨论(0)
  • 2020-12-09 00:04

    I think you need to add your stuff to the PYTHONPATH. I add my project and it's virtualenv. Here is a sample of what your wsgi could look like per project.

    import sys
    import site
    import os
    
    envpath = '/development/myproject/env/lib/python2.7/site-packages'
    
    # we add currently directory to path and change to it
    pwd = os.path.dirname(os.path.abspath(__file__))
    os.chdir(pwd)
    sys.path = [pwd] + sys.path
    
    # Append paths
    site.addsitedir(envpath)
    
    # now start django
    from django.core.handlers.wsgi import WSGIHandler
    os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
    application = WSGIHandler()
    
    0 讨论(0)
  • 2020-12-09 00:05

    I've encounter a similar problem. In my case I had a top level config folder, where general settings.py file was located. In myproject folder I had a second settings where I try to import config.settings file.

    In my case the problem was that python was looking in myproject.config folder instead of top level config.

        # project structure
        config/
            settings.py
            constans.py
        myproject/
            config/
                constants.py
            settings.py
            manage.py
            urls.py
    

    err: ImportError: Could not import settings 'myproject.settings' (Is it on sys.path?): No module named settings

    Solution: I removed/moved the myproject/config folder.

    0 讨论(0)
  • In your terminal, cd into the directory that contains settings.py, then run

    python settings.py
    

    You may get an import error that is easily fixed (typing error, or syntax error).

    0 讨论(0)
  • 2020-12-09 00:17

    According to this https://docs.djangoproject.com/en/1.5/howto/deployment/wsgi/modwsgi/#using-a-virtualenv just add path to your site package and python site-packages directory in Apache config or your site config (outside VirtualHost directive)

    WSGIPythonPath /path/to/mysite.com:/path/to/your/venv/lib/python2.X/site-packages

    For me, it was:

    WSGIPythonPath /var/www/djtest:/usr/local/lib/python2.7/site-packages

    0 讨论(0)
  • 2020-12-09 00:19

    Have you tried to add that folder to your PYTHONPATH explicitly? Also, you may need to add both the project folder and the parent one. Add these lines to your wsgi file, using the path of your project:

    sys.path.append('/explicit/path/to/myproject')
    sys.path.append('/explicit/path/to')
    

    P.S. do that before the application = WSGIHandler()line.

    Update: the new error seems to have the same cause, according to this. Please double-check where your "voting_extras" app is, and whether or not its parent folder is present in the PYTHONPATH.

    0 讨论(0)
提交回复
热议问题