#5690: Use os.path.dirname() not os.path.join(foo, '..')
------------------------------------------------+---------------------------
Reporter: Thomas Güttler <[EMAIL PROTECTED]> | Owner:
nobody
Status: new | Component:
django-admin.py
Version: SVN | Resolution:
Keywords: | Stage:
Unreviewed
Has_patch: 1 | Needs_docs: 0
Needs_tests: 0 | Needs_better_patch: 0
------------------------------------------------+---------------------------
Comment (by gwilson):
Using `dirname()` returns the same thing as what's currently there if
there is no trailing slash:
{{{
>>> directory = os.getcwd()
>>> directory
'/tmp/dotdot/two'
>>> project_dir = os.path.normpath(os.path.join(directory, '..'))
>>> project_dir
'/tmp/dotdot'
>>> parent_dir = os.path.basename(project_dir)
>>> parent_dir
'dotdot'
}}}
and
{{{
>>> directory = os.getcwd()
>>> directory
'/tmp/dotdot/two'
>>> project_dir = os.path.normpath(os.path.dirname(directory))
>>> project_dir
'/tmp/dotdot'
>>> parent_dir = os.path.basename(project_dir)
>>> parent_dir
'dotdot'
}}}
However, using `dirname()` returns different results if directory ends
with a slash:
{{{
>>> directory = '/tmp/dotdot/two/'
>>> project_dir = os.path.normpath(os.path.join(directory, '..'))
>>> project_dir
'/tmp/dotdot'
>>> parent_dir = os.path.basename(project_dir)
>>> parent_dir
'dotdot'
}}}
and
{{{
>>> directory = '/tmp/dotdot/two/'
>>> project_dir = os.path.normpath(os.path.dirname(directory))
>>> project_dir
'/tmp/dotdot/two'
>>> parent_dir = os.path.basename(project_dir)
>>> parent_dir
'two'
}}}
--
Ticket URL: <http://code.djangoproject.com/ticket/5690#comment:2>
Django Code <http://code.djangoproject.com/>
The web framework for perfectionists with deadlines
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/django-updates?hl=en
-~----------~----~----~----~------~----~------~--~---