Opened 10 years ago

Last modified 10 years ago

#22577 closed Bug

The makemigrations management command has a problem with migrations dir — at Version 2

Reported by: japrogramer@… Owned by: nobody
Component: Migrations Version: dev
Severity: Release blocker Keywords: makemigrations, fail, init, file
Cc: Triage Stage: Accepted
Has patch: yes Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description (last modified by Tim Graham)

When the migration folder does not have an init
http://codepad.org/U2nGptor

File "/home/archie/git/django/django/db/migrations/writer.py", line 150, in path basedir = os.path.dirname(migrations_module.__file__)
AttributeError: 'module' object has no attribute '__file__'

the problem lies with makemigrations.py line 134-36 they are checking to see if an init file exists in the migrations dir but it checks using a line that depends on the existence of __init__.py. line 130 , writer.path, following to see where this code comes from led me to line 149 and 150 which need there to be an init file for __file__ to be an attribute there ..
tl;dr
makemigrations checks for an init file using os.path.isdir but with a call that depends on an __init__.py for it treats it as a module before it knows if it is a module

Change History (1)

comment:2 by Tim Graham, 10 years ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.
Back to Top