【问题标题】:Lessons starting Django/Python/MySQL on OSX (from OSX newbie)在 OSX 上开始 Django/Python/MySQL 的课程(来自 OSX 新手)
【发布时间】:2012-02-21 22:38:20
【问题描述】:

我对编码有点陌生,想用 MySQL 后端启动我的第一个 Django 应用程序。我已经在我的 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_back 然后创建了新的符号链接ln -s 2.7/ Current
  • MySQL

    • 问题 1: 安装程序找不到 MySQL_config 的正确路径 “环境错误:找不到 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
  • Django

    • 分离和分离models.py:
      我喜欢将东西放入容器中,并且我想在“models”目录中使用多个“models”文件,而不是一个大的 models.py 文件。诀窍是,您需要告知所有人模型在哪里以及如何访问它们。
    • init.py 文件添加到新的“模型”目录。在此文件中,确保从模型中导入所有类。如果你有 data1.py 和 data2.py,你将需要在 init.py 中这样的东西:
      from data1 import *
      from data2 import *
    • 将应用名称添加到每个模型的元数据中:

    o

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

【问题讨论】:

  • 对不起,这是一个问题还是一篇博文?
  • 而不是使用系统的默认python;使用virtualenv。这是一个提问的论坛;不是讨论(正如@jdi 指出的那样)。
  • 顺便说一句,根据我的经验,我从未见过安装 mysql 的这个过程。我至少可以说这对人们来说可能并不常见。
  • 谢谢,我会检查 virtualenv 以希望让事情变得更简单。对帖子的格式感到抱歉 - 我会继续提出问题。
  • @Esteban:我很欣赏你想要做的事情,但 StackOverflow 不适合这样的东西。从像 Wordpress.com 这样的地方获取一个博客,然后去城里。这不是坏信息,只是错误的论坛。

标签: python mysql django macos


【解决方案1】:
  1. 安装Homebrew
  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

【讨论】:

    【解决方案2】:

    了解如何使用Vagrant + Virtual Box,并在与生产环境相同的环境中开发 Django 站点。

    【讨论】:

      猜你喜欢
      • 2014-06-20
      • 2015-09-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-10
      相关资源
      最近更新 更多