Как развернуть: Мезонин + MySQL

Итак, вот вопрос:

Как развернуть Mezzanine, Django CMS, локально с MySQL вместо SQLite по умолчанию?

Какой точный рецепт?

1 ответ

Решение

Сценарий в одной части находится в -> здесь

1. Питон

Python предустановлен в Ubuntu и AFAIK, он жизненно важен для некоторых операций system/desktop-env, но на всякий случай:

sudo apt-get install python
sudo apt-get install python-pip
sudo apt-get install build-essential python-dev

2. MySQL

Вам необходимо установить (a) сервер, (b) клиент, (c)dev libs & headers, (d) адаптер Python

sudo apt-get install mysql-server
sudo apt-get install mysql-client-5.5
sudo apt-get install libmysqlclient-dev
sudo apt-get install python-mysqldb

3. Полномочия

Установите учетные данные MySQL, учебник по этому вопросу -> здесь, чтобы у вас были следующие пользователи с соответствующими командами входа в систему:

  • пользователь root

    mysql -u root -p / password 
    
  • Пользователь мезонина

    mysql -u mezz -p / masterkey 
    

4. Установите мезонин

pip install mezzanine

5. Создать проект

mezzanine-project myproject
cd myproject

6. Настройте БД для MySQL

Используйте свои учетные данные из шага 3.

vim local_settings.py

Это файл Python. Переменная DATABASES должна быть сделана так (используйте ваши учетные данные в курсиве):

БАЗЫ ДАННЫХ = {
    "дефолт": {
        # Заканчивается на "postgresql_psycopg2", "mysql", "sqlite3" или "oracle".
        "ДВИГАТЕЛЬ": "django.db.backends.mysql",
        # Имя БД или путь к файлу базы данных при использовании sqlite3.
        "ИМЯ": "мойпроект",
        # Не используется с sqlite3.
        "USER": "mezz",
        # Не используется с sqlite3.
        "ПАРОЛЬ": "мастер-ключ",
        # Установить пустую строку для localhost. Не используется с sqlite3.
        "ХОСТ": "",
        # Установить пустую строку по умолчанию. Не используется с sqlite3.
        "ПОРТ": "",
    }
}

7. Делать мезонинные процедуры

Собирать статические файлы и шаблоны

python manage.py collectstatic  
python manage.py collecttemplates  

Синхронизировать с базой данных. Этот шаг зависит от версии Django, на момент написания этой статьи Django 1.7 по-прежнему не поддерживается, поэтому используйте syncdb:

python manage.py syncdb

Вы также можете использовать консоль менеджера миграции South, но знаете, что проект South находится в сумерках, поскольку в Django 1.7 появилась новая система миграции.

После вывода syncdb у вас будет суперпользователь (для входа в раздел администратора Mezzanine). Вы можете создать суперпользователя отдельно после синхронизации:

python manage.py createsuperuser

Запустите встроенный сервер Mezzanine (точнее, это облегченный сервер Django):

python manage.py runserver

8. Иди

Направьте ваш браузер на http://127.0.0.1:8000 и, надеюсь, вы увидите стандартное приветствие в мезонине.

9. Развертывание производства

-> Вот хорошее руководство, вы можете использовать его для создания демонстрационного сайта в производственной среде (на этом конкретном сайте он бесплатен с некоторыми ограничениями). И вот их настройки для MySQL.

10. Дополнительно

11. "Редакции"

Некоторые ревизии, которые я собрал на своем пути:

  • Менеджер южной миграции нуждается в некоторых изменениях в разделе базы данных вашего settings.py
  • Мезонин и управление версиями показались мне очень разочаровывающими: он не поддерживает django 1.7, и у моего хостинг-провайдера не было root-доступа, поэтому я должен был установить MySQL-Python ("адаптер") через pip. Некоторые версии адаптер-мезонин-джанго несовместимы.

На данный момент я использую Mezzanine v3.1.10, Django v1.6.10 и MySQL-Python v1.2.3, и это работает. Я отключил южный бэкэнд-аддон, потому что он сделал вещи для моего развертывания более сложными, чем простыми.

12. Постскриптум

Если кто-то посоветует мне, как улучшить это руководство, я сделаю это. юлианский день

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