pythondjangorun-scriptdjango-extensions

django-extensions: Run a script using runscript which is inside a folder within scripts


I am getting problems running a script that is inside a folder inside of scripts folder using runscript command included in django-extensions.

The folder structure in my project is like:

-apps
-scripts
    -syllabus
        -first.py
    -second.py

The files first.py and second.py are identical.

It has a run function as required by the django-extension runscript command.

def run(*args):
    # my function call for the script.

I have well placed init.py and I can run second.py from the command:

./manage.py runscript second --script-args=excel.xlsx

But somehow I cannot run the first.py file from the runscript command. With this command:

./manage.py runscript first --script-args=excel.xlsx

I get

No (valid) module for script 'first' found Try running with a higher verbosity level like: -v2 or -v3

I even tried running with higher verbosity level adding -v2 and -v3 at the end. But got this error:

No (valid) module for script 'first' found

I know that I am missing something simple, can anyone help me out?


Solution

  • You need to run the script as follows:

    /manage.py runscript scripts.syllabus.first --script-args=excel.xlsx
    

    Here scripts and syllabus are two directories containing __init__.py.