Как перезаписать файлы мезонина?

Я использую картридж 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Я бы посоветовал вам пойти по маршруту разветвления, указанному выше.

Другие вопросы по тегам