Уроки запуска Django / Python / MySQL в OSX (от новичка в OSX) - PullRequest
3 голосов
/ 30 января 2012

Я немного новичок в кодировании и хотел запустить свое первое приложение Django с бэкэндом MySQL. Я уже почти год пользуюсь этой установкой на своей машине с Windows, но это была унаследованная кодовая база - и я, к сожалению, никогда не пытался создать новое приложение с нуля. Кроме того, я недавно приобрел подержанный MacBook, чтобы ознакомиться с ОС и привыкнуть к использованию Unix (поскольку весь наш код запускается с серверов Ubuntu / RedHat) - так что я все еще в поиске путей передвижения по городу. 'фаза.

Ниже приведены некоторые трудности / ошибки, с которыми я столкнулся, и ответы, которые сработали для меня (и не всегда были так легко найти) Это не «Вот как вы должны решить эту проблему», а просто репозиторий того, как я решил некоторые проблемы - и надеюсь узнать, как я должен сделать это. Не стесняйтесь добавлять больше!

  • Изменить версию Python по умолчанию

    • Мне нужно было некоторое время использовать Python 2.4. Когда мне больше не нужно было последовательно использовать Python 2.4, я захотел изменить его обратно на Python 2.7.
      Один из способов, которым я смог это сделать, - изменить экспорт через export PATH=/usr/bin:$PATH. Это работало только для моей текущей терминальной оболочки - не очень полезно
      Я наконец-то обнаружил, что изменение символической ссылки в /Library/Frameworks/Python.framework/Versions/Current с -> 2.4 до 2.7 решило мою проблему. Я старался ln -f -s 2.7/ Current но это не сработало. В конце концов я переместил мой Current dir в Current_back, затем создал новую символическую ссылку ln -s 2.7/ Current
  • MySQL

    • Проблема 1: Программа установки не может найти правильный путь для MySQL_config «EnvironmentError: mysql_config не найден» Я нашел несколько человек, которые указали, что вам нужно отредактировать файл 'setup_posix.py' и установить mysql_config.path = "/usr/local/mysql/bin/mysql_config" но в конечном итоге мне пришлось изменить это в файле site.cfg .
    • Проблема 2: Я постоянно получал ошибку «Библиотека не загружена» каждый раз, когда пытался импортировать MySQLdb. Чтобы решить эту проблему, я обновил свой профиль bash и установил DYLD_LIBRARY_PATH=/usr/local/mysql/lib:$DYLD_LIBRARY_PATH
  • Джанго

    • Разделение и разделение models.py:
      Мне нравится помещать вещи в контейнеры, и я хотел использовать несколько файлов 'models' в каталоге 'models', а не один большой файл models.py. Хитрость в том, что вам нужно сообщить всем, где находятся модели и как к ним обращаться.
    • Добавьте файл init .py в новый каталог моделей. В этом файле обязательно импортируйте все классы из ваших моделей. Если у вас есть data1.py и data2.py, вам потребуется что-то вроде этого в init .py:
      from data1 import *
      from data2 import *
    • Добавить имя приложения в метаданные для каждой модели:

    о

    class Data(models.Model):
        foo = models.CharField(max_length=200)    
    
        class Meta:
            app_label = 'app_name'  
    

Ответы [ 2 ]

2 голосов
/ 30 января 2012

Узнайте, как использовать Vagrant + Virtual Box, и разрабатывайте сайты Django в той же среде, что и ваша продукция.

0 голосов
/ 30 января 2012
  1. Установка Домашний напиток
  2. brew install python mysql
  3. easy_install pip
  4. pip install virtualenv virtualenvwrapper
  5. echo "source /usr/local/bin/virtualenvwrapper.sh > /dev/null" >> ~/.bash_profile
  6. source ~/.bash_profile
  7. mkvirtualenv --no-site-packages <your env name>
  8. pip install django
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...