diff --git a/django/core/management/commands/startapp.py b/django/core/management/commands/startapp.py index c238e74a08..20ab397da1 100644 --- a/django/core/management/commands/startapp.py +++ b/django/core/management/commands/startapp.py @@ -14,14 +14,13 @@ class Command(LabelCommand): def handle_label(self, app_name, directory=None, **options): if directory is None: directory = os.getcwd() - # Determine the project_name a bit naively -- by looking at the name of - # the parent directory. - project_dir = os.path.normpath(os.path.join(directory, os.pardir)) - parent_dir = os.path.basename(project_dir) + # Determine the project_name by using the basename of directory, + # which should be the full path of the project directory (or the + # current directory if no directory was passed). project_name = os.path.basename(directory) if app_name == project_name: raise CommandError("You cannot create an app with the same name (%r) as your project." % app_name) - copy_helper(self.style, 'app', app_name, directory, parent_dir) + copy_helper(self.style, 'app', app_name, directory, project_name) class ProjectCommand(Command): help = "Creates a Django app directory structure for the given app name in this project's directory."