IDLE (Python GUI)

150 views
Skip to first unread message

Mikey3D

unread,
Nov 28, 2009, 6:21:56 PM11/28/09
to Django users
Windows 7:

My project is in: C:\Python26\Lib\site-packages\mysite

I'm working on this section: Playing with the API
http://docs.djangoproject.com/en/dev/intro/tutorial01/#playing-with-the-api

When I do (Windows+R >cmd >OK) to do python shell (python manage.py
shell) it works. But I have try other tool that come with Python26 is
IDLE (Python GUI) and I get an error:

================================================================
Python 2.6.4 (r264:75708, Oct 26 2009, 08:23:19) [MSC v.1500 32 bit
(Intel)] on win32
Type "copyright", "credits" or "license()" for more information.

****************************************************************
Personal firewall software may warn about the connection IDLE
makes to its subprocess using this computer's internal loopback
interface. This connection is not visible on any external
interface and no data is sent to or received from the Internet.
****************************************************************

IDLE 2.6.4 ==== No Subprocess ====
>>> import mysite
>>> from mysite.polls.models import Poll, Choice
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
from mysite.polls.models import Poll, Choice
File "C:\Python26\Lib\site-packages\mysite\polls\models.py", line 1,
in <module>
from django.db import models
File "C:\Python26\Lib\site-packages\django\db\__init__.py", line 10,
in <module>
if not settings.DATABASE_ENGINE:
File "C:\Python26\Lib\site-packages\django\utils\functional.py",
line 269, in __getattr__
self._setup()
File "C:\Python26\Lib\site-packages\django\conf\__init__.py", line
38, in _setup
raise ImportError("Settings cannot be imported, because
environment variable %s is undefined." % ENVIRONMENT_VARIABLE)
ImportError: Settings cannot be imported, because environment variable
DJANGO_SETTINGS_MODULE is undefined.
>>>
================================================================

I don't understand how and where to settings DJANGO_SETTINGS_MODULE?

Thanks, Mikey3D

Nick Arnett

unread,
Nov 28, 2009, 7:06:21 PM11/28/09
to django...@googlegroups.com
On Sat, Nov 28, 2009 at 3:21 PM, Mikey3D <snap...@hotmail.com> wrote:
Windows 7:

My project is in: C:\Python26\Lib\site-packages\mysite

I'm working on this section: Playing with the API
http://docs.djangoproject.com/en/dev/intro/tutorial01/#playing-with-the-api

When I do (Windows+R >cmd >OK) to do python shell (python manage.py
shell) it works. But I have try other tool that come with Python26 is
IDLE (Python GUI) and I get an error:

I think what you need is the following before you import anything from Django: (or any module that imports from Django):

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

(The absolute or relative path to your settings file.)

Nick

Mikey3D

unread,
Nov 28, 2009, 7:55:32 PM11/28/09
to Django users
The first task I get an error:

Python 2.6.4 (r264:75708, Oct 26 2009, 08:23:19) [MSC v.1500 32 bit
(Intel)] on win32
Type "copyright", "credits" or "license()" for more information.

****************************************************************
Personal firewall software may warn about the connection IDLE
makes to its subprocess using this computer's internal loopback
interface. This connection is not visible on any external
interface and no data is sent to or received from the Internet.
****************************************************************

IDLE 2.6.4
>>> import os
>>> os.environ['DJANGO_SETTINGS_MODULE'] = "settings"
>>> import mysite
>>> from mysite.polls.models import Poll, Choice

Traceback (most recent call last):
File "<pyshell#3>", line 1, in <module>
from mysite.polls.models import Poll, Choice
File "C:\Python26\Lib\site-packages\mysite\polls\models.py", line 1,
in <module>
from django.db import models
File "C:\Python26\Lib\site-packages\django\db\__init__.py", line 10,
in <module>
if not settings.DATABASE_ENGINE:
File "C:\Python26\Lib\site-packages\django\utils\functional.py",
line 269, in __getattr__
self._setup()
File "C:\Python26\Lib\site-packages\django\conf\__init__.py", line
40, in _setup
self._wrapped = Settings(settings_module)
File "C:\Python26\Lib\site-packages\django\conf\__init__.py", line
75, in __init__
raise ImportError, "Could not import settings '%s' (Is it on
sys.path? Does it have syntax errors?): %s" % (self.SETTINGS_MODULE,
e)
ImportError: Could not import settings 'settings' (Is it on sys.path?
Does it have syntax errors?): No module named settings
>>>
===================================================================================================

The second task I put the code what you suggest in mysite\settings.py:

# Django settings for mysite project.

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

DEBUG = True
TEMPLATE_DEBUG = DEBUG

ADMINS = (
# ('Your Name', 'your_...@domain.com'),
)

MANAGERS = ADMINS

DATABASE_ENGINE = 'sqlite3' # 'postgresql_psycopg2',
'postgresql', 'mysql', 'sqlite3' or 'oracle'.
DATABASE_NAME = 'C:/Python26/Lib/site-packages/mysite/
sqlite3.db' # Or path to database file if using sqlite3.
DATABASE_USER = '' # Not used with sqlite3.
DATABASE_PASSWORD = '' # Not used with sqlite3.
DATABASE_HOST = '' # Set to empty string for localhost.
Not used with sqlite3.
DATABASE_PORT = '' # Set to empty string for default. Not
used with sqlite3.

# Local time zone for this installation. Choices can be found here:
# http://en.wikipedia.org/wiki/List_of_tz_zones_by_name
# although not all choices may be available on all operating systems.
# If running in a Windows environment this must be set to the same as
your
# system time zone.
TIME_ZONE = 'America/Chicago'

# Language code for this installation. All choices can be found here:
# http://www.i18nguy.com/unicode/language-identifiers.html
LANGUAGE_CODE = 'en-us'

SITE_ID = 1

# If you set this to False, Django will make some optimizations so as
not
# to load the internationalization machinery.
USE_I18N = True

# Absolute path to the directory that holds media.
# Example: "/home/media/media.lawrence.com/"
MEDIA_ROOT = ''

# URL that handles the media served from MEDIA_ROOT. Make sure to use
a
# trailing slash if there is a path component (optional in other
cases).
# Examples: "http://media.lawrence.com", "http://example.com/media/"
MEDIA_URL = ''

# URL prefix for admin media -- CSS, JavaScript and images. Make sure
to use a
# trailing slash.
# Examples: "http://foo.com/media/", "/media/".
ADMIN_MEDIA_PREFIX = '/media/'

# Make this unique, and don't share it with anybody.
SECRET_KEY = 'yl)c4ch6k_2u8zjvx_ad!1!ffqllb4k%ry^w(%y9=8g%$d%web'

# List of callables that know how to import templates from various
sources.
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.load_template_source',
'django.template.loaders.app_directories.load_template_source',
# 'django.template.loaders.eggs.load_template_source',
)

MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
)

ROOT_URLCONF = 'mysite.urls'

TEMPLATE_DIRS = (
# Put strings here, like "/home/html/django_templates" or "C:/www/
django/templates".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
)

INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'mysite.polls'
)
==================================================================================

I try this but get an error:

Python 2.6.4 (r264:75708, Oct 26 2009, 08:23:19) [MSC v.1500 32 bit
(Intel)] on win32
Type "copyright", "credits" or "license()" for more information.

****************************************************************
Personal firewall software may warn about the connection IDLE
makes to its subprocess using this computer's internal loopback
interface. This connection is not visible on any external
interface and no data is sent to or received from the Internet.
****************************************************************

IDLE 2.6.4
>>> import mysite
>>> from mysite.polls.models import Poll, Choice

Traceback (most recent call last):
File "<pyshell#5>", line 1, in <module>
from mysite.polls.models import Poll, Choice
File "C:\Python26\Lib\site-packages\mysite\polls\models.py", line 1,
in <module>
from django.db import models
File "C:\Python26\Lib\site-packages\django\db\__init__.py", line 10,
in <module>
if not settings.DATABASE_ENGINE:
File "C:\Python26\Lib\site-packages\django\utils\functional.py",
line 269, in __getattr__
self._setup()
File "C:\Python26\Lib\site-packages\django\conf\__init__.py", line
40, in _setup
self._wrapped = Settings(settings_module)
File "C:\Python26\Lib\site-packages\django\conf\__init__.py", line
75, in __init__
raise ImportError, "Could not import settings '%s' (Is it on
sys.path? Does it have syntax errors?): %s" % (self.SETTINGS_MODULE,
e)
ImportError: Could not import settings 'settings' (Is it on sys.path?
Does it have syntax errors?): No module named settings
>>>
==============================================================================================

The third task it does works:

>>> import os
>>> os.environ['DJANGO_SETTINGS_MODULE'] = "mysite.settings"
>>> import mysite
>>> from mysite.polls.models import Poll, Choice
>>> Poll.objects.all()
[]
>>> import datetime
>>> p = Poll(question="What's up?", pub_date=datetime.datetime.now())
>>> p.save()
>>> p.id
1
>>> p.question
"What's up?"
>>>

I have trying 3 difference tasks but the last one it works.

Thanks, Nick

On Nov 28, 7:06 pm, Nick Arnett <nick.arn...@gmail.com> wrote:
> On Sat, Nov 28, 2009 at 3:21 PM, Mikey3D <snapmi...@hotmail.com> wrote:
> > Windows 7:
>
> > My project is in: C:\Python26\Lib\site-packages\mysite
>
> > I'm working on this section: Playing with the API
> >http://docs.djangoproject.com/en/dev/intro/tutorial01/#playing-with-t...
Reply all
Reply to author
Forward
0 new messages