Эта тема показывается в числе первых результатов поиска Google «загрузить данные из всех приборов» и не упоминает, какое IMO является правильным решением для этого, то есть решение, которое позволяет загружать любые приборы, которые вы хотите без каких-либо подстановочных знаков, ни единой модификации файла settings.py (я тоже так делал)
Просто сделайте каталоги приспособлений ваших приложений плоскими (а не обычной схемой Django, которая, например, выглядит как app_name / templates / app_name / mytemplate.html), то есть app_name / fixtures / myfixture. [Json, yaml, xml]
Вот что говорит django doc :
Например:
django-admin loaddata foo/bar/mydata.json
будет искать /fixtures/foo/bar/mydata.json для каждого установленного приложения, /foo/bar/mydata.json для каждого каталога в FIXTURE_DIRS и по буквальному пути foo / bar / mydata.json.
Это означает, что если у вас есть fixtures / myfixture.json во всех каталогах ваших приложений, вам просто нужно запустить
./manage.py loaddata myfixture
чтобы загрузить все приборы, которые находятся там в вашем проекте ... И это все! Вы даже можете ограничить, из каких приложений вы загружаете приборы, используя аргументы --app или --exclude.
Я упомяну, что я использую свои приборы только для заполнения своей базы данных при выполнении какой-либо разработки, поэтому я не против иметь плоскую структуру в моих каталогах 'фикстур' ... Но даже если вы используете свои приборы для тестирования, кажется, что наличие плоской структуры - это путь Django-esque, и как
этот ответ предполагает, что вы бы сослались на прибор из определенного приложения, просто написав что-то вроде:
class MyTestCase(TestCase):
fixtures = ['app_name/fixtures/myfixture.json']