Как перезаписать файлы мезонина?
Я использую картридж Mezzanine + и хочу его настроить.
Я могу перезаписать шаблоны, поместив их в папку шаблонов нашего проекта.
Но я понятия не имею, как переписать виды и модели. Потому что мне нужно отредактировать некоторые дополнительные функции в моем проекте.
Например, сохраняя куки во время регистрации, я сделал это путем редактирования корневых файлов. Но может кто-нибудь сказать мне, как переписать эти конкретные функции в моем проекте.
Спасибо
1 ответ
Существует два основных способа обработки изменений в сторонних приложениях.
Если некоторые части того, что вы хотите, значительно отличаются от того, что предоставляет стороннее приложение, вы можете рассмотреть возможность разветвления проекта, внесения изменений и помещения изменений в его git-репозиторий, а затем переустановки разветвленной версии с помощью
pip install -e git+git://github.com/YourUsername/forked-django-app.git#egg=forked-django-app
Если вы считаете, что это может быть слишком хлопотно, другим способом было бы объявить определенную функцию url / view (которая была определена в стороннем приложении) в urls.py вашего собственного проекта.
В вашем случае, что вы пытаетесь переназначить это mezzanine.accounts.urls
, ссылка - https://github.com/stephenmcd/mezzanine/blob/master/mezzanine/accounts/urls.py
Таким образом, вы можете в основном объявить URL-адрес, который вы хотите переопределить, в urls.py вашего собственного проекта, и он будет иметь приоритет над тем URL-адресом, который объявлен в мезонине, и вы можете указать его для своей пользовательской функции просмотра.
Если вы дошли до того, что вам действительно нужно изменить один из мезонинов models.py
Я бы посоветовал вам пойти по маршруту разветвления, указанному выше.