A. 关于macdjango在哪里的信息
导读:今天首席CTO笔记来给各位分享关于macdjango在哪里的相关内容,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
一.下载Django
如果电脑没安装python,点击这里。然后从这里下载Django稳定版本。
或者执行命令下载Django最新版本:gitclone
这里我用的是Mac自带的python2.7,下载是最新版本的Django后发现python2.7版本需要升级,但是注意,对iOS开发者来说,最好不要升级python2.7到python3,因为Xcode只支持最稳定版的python2.7脚本。所以这里我下载的Django版本是1.6.1。
二.安装Django
cdDjangosudopythonsetup.py.install
Python默认在/Library/Python/2.7中,那么无论如何你在哪里安装完DJango,都会在/Library/Python/2.7/site-packages中生成一个django的文件夹。如果要删除django,只需要把该目录下的django文件夹删除即可。
三.测试LocalHost是否成功
sudomkdir~/Djangodemo
/*创建一个用于测试Localhost的网站样例*/
sudodjango-admin.pystartprojecttestLocalHost
cdtestLocalHost
pythonmanage.pyrunserver
浏览器打开,成功的话你将会看到Django的简单的成功页面
说明:django-admin.py在我们安装完Django之后除了在site-packages中生成django文件夹之外(里面都是一些DJango命令的一些文件和代码),在/usr/local/bin/中也生成了一个名为django-admin.py的链接,这样无论你在何种路径下都可以直接调用django-admin.py文件了。在Win下我们称这个过程为:加入到环境变量。
四.文件结构
1.创建mysite工程
删除原来的LocalHost工程,创建mysite工程,执行命令:$mkdirmysite
$django-admin.pystartporjectmysite
此时的目录结构如下:
mysite/
mysite/
__init__.py
settings.py
urls.py
manage.py
2.manage.py
作用:
把该工程的包加入了sys.path;以后你可以直接在你的代码中引用该工程中其他的包。
加载DJANGO_SETTINGS_MODULE,指明该工程的配置文件是mysite/settings.py。
最主要的是它包裹了django-admin.py的一些函数,让你可以通过它来操作整个工程。
3.__init__.py
严格意义上讲__init__.py不属于DJango的范畴,而是Python语言的一种习惯,经常为空文件。主要是告诉工程这是一个包(Package),防止不经意间因为包名为诸如String之类的字符串而引起的混乱,当然你也可以在里面加一些初始化的函数,但不在我们的讨论之列。
4.settings.py
此前我们提到了manage.py的第二件工作便是指定了它是工程的配置文件,那它配置了些什么呢?代码量在其他几个文件中属于比较多的,有一百行的样子,主要设置了关于数据库,后台管理等配置,等到我们要用的时候再详细说明。
5.urls.py
它负责把客户的请求翻译成函数调用。是重要要掌握的文件。
DJango通过settings.py中指定的URLconf参数找到对应的urls.py文件,此例中正好为我们的这个文件。
DJango在urls.py中找到urlpatterns变量。
DJango收到一个客户地址请求,我们不妨设为localhost。
DJango在urlpatterns中顺序遍历正则式,找到第一个匹配,调用该正则式对应的函数。
该函数返回客户端所请求的内容。
对开发者来说,真正需要关心的是如何完成正则表达式和对应函数的对应。如下面例子:
123
urlpatterns=patterns("",url(r'^$','hello.views.home'),)
说明:其中url里面左半部分是正则式,右半部分是函数调用。r说明是raw匹配,表明正则表达式要求每个字符都必须被匹配,是一个可选项,如果不能理解可以省略。^表示匹配开始,$表示匹配结束。所以这个正则表达式匹配了空字符,正好符合地址为localhost的客户请求(DJango收到的请求会自动省略域名,即localhost,即真正的请求字符串为空)。右侧表明腰调用名为hello的app的views.py文件的home函数。
6.增加helloapp
刚才我们在url匹配的时候调用了home函数,此时我们就开始创建它:
pythonmanage.pystartapphello
这样我们在manage.py同级目录下生成了hello目录,进入hello目录其他文件都不用管,也不需要理解,直接打开views.py编辑成如下样子:
fromdjango.httpimportHttpResponse
defhome(request):
returnHttpResponse("HelloWorld")
启动服务器。其实hello相当于是一个app应用被添加进了mysite工程,当特定的请求到来时通过url匹配调用相应app下的views.py中的函数来达到不同的显示效果。
五.Django-URL解析和匹配
1.patterns()函数
patterns函数的的原型:
patterns(prefix,pattern_description,...)
其中prefix表示函数调用的前缀,而pattern_description则是一系列的元组。举例说明prefix的作用:
urlpatterns=patterns("hello.views",
url(r'^$','home'),
)
上例和上例的执行效果一样,都表明了helloapp下的views文件里的home函数。注意:前缀末尾不必包含“.”;另外因为python函数规定参数不能多于255个,因此如果你的映射关系很多,可以利用诸如:urlpatterns+=patterns(…)这种形式累加。
2.url()函数
url函数的原型:
1
url(regex,view,kwargs=None,name=None,prefix='')
其中后三项是可选项,在我们的例子中:regex=”r’^$'”;view=”hello.views.home”;name项给该url命名,这在未来通过name反向确定url有很大的作用;kwargs则传递额外的参数;prefix和此前的prefix作用一致,不过只适用这一条url。
3.通过url传递信息
DJango在通过url传递参数时有两种方式,一种通过位置,一种通过关键词。我们先看第一种,改此前的映射关系如下:
1
url(r'^(d{4})/(d{2})$','hello.views.home'),
修改hello/views.py,增加两行代码如下:
defhome(request,year=',month=༼'):
returnHttpResponse("HelloWorld"+year+""+month)
这样当用户请求locahost:8000/2015/5时候,相当于在调用home(request,‘2015’,’5’),注意此时year和month的相对关系,因为参数传递是基于位置信息的,第一个是4个数字是年,第二个2个数字是月。
下面是第二种,即关键词方式,我们修改两个文件如下:
#mysite/urls.py
url(r'^(?Pd{4})/(?Pd{2})$','hello.views.home'),
#hello/views.py
#注意year和month的位置
defhome(request,month=༼',year='):
returnHttpResponse("HelloWorld"+year+""+month)
MacOS如何安装Django?求详细的安装步骤与指南,网上的教程好复杂,看不懂!其实很简单,下载django的安装文件,然后解压缩,然后用命令行cd到解压缩出来文件的目录,执行pythonsetup.pyinstall即可
怎么看Django安装在哪里了
在linux直接使用终端。然后调用python解释器。
python出现后输入下列语句查看django版本,如果没有安装django,那么当你importdjango就会出错。
importdjango
printdjango.VERSION
下面是我windows下面的输出:
(1,3,1,'final',0)完。
结语:以上就是首席CTO笔记为大家介绍的关于macdjango在哪里的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。
B. 求Mac下Python路径的手动设置方法, 谢谢.
Mac 下Python 可以多版本的并存,并且python的目录也有好几个,不过总体来说,Mac 自带的有python 还是比较方便的
Mac 系统自带的又Python ,可能Python版本需要更新,所以目录结构要了解下
系统自带的Python的路径
在mac 系统自带的程序都会在library下查看
前往文件夹 /Lib (资源库)
系统自带的Python 路径为:
/Library/Frameworks/Python.framework/Versions/2.7
当前的版本是2.7.6目录结构和Windows相似这里说下bin,lib
bin目录,就相当于主程序的目录
lib目录,就是python程序模块的目录
系统自带python的安装模块包路径
在lib目录下python2.7,有个 site-packages 这个包里面的模块都是通过
python setup.py install
这个python 命令安装的模块
如果系统自带的python 使用pip,或者easy_install 安装过模块,那么会看到lib (资源库)目录下多了一个python 的文件夹
例如:
/Library/Python/2.7/site-packages
在这个 site-packages 这个包里面的模块都是通过
pip install xxxxxx
这个pip 命令安装的模块
使用brew 安装的python
Mac 有个强大的brew 工具,类似apt-get,使用它可以安装一些系统的模块,同样可以更新安装python
使用brew 安装的都会存在路径:/usr/local
同样使用brew 安装的python路径如下:
/usr/local/Frameworks/Python.framework/Versions/
ps:
/usr/local/ 这个文件夹 相当于本地用户的系统文件夹
C. mac 下怎么安装python 搭建开发环境
一. 安装python
mac系统其实自带了一个python的执行执行环境,用来运行python还行,但是开发可能就不够了,因此我们需要重新安装python。这里有两种方案安装:
1.homebrew
brew install python
这个方案比较简单,如果出错的话可以给前面加sudo试试,这个安装的python可能不是最新版.
2.从官网下载安装
大家可以从https://www.python.org/download下载安装最新版的python,安装比较无脑,一路按下去就OK,缺点是以后升级,卸载都得自己维护.
这两个方法安装的python的位置是不一样的,大家可以用:
which python
来查看安装位置.安装完成后在终端中键入python来验证安装是否成功.
二. 安装pip
这里好多文章中说要先安装easy_install, 其实是不用的.
1.我们先获取pip安装脚本:
wget https://bootstrap.pypa.io/get-pip.py
如果没有安装wget可以去这里将所有内容复制下来,新建get-pip.py文件,将内容拷进去就OK了.
2.安装pip
sudo python get-pip.py
用python执行刚才获取的脚本,这里sudo可以选择使用,若遇到类似这个报错则必须加sudo:
Exception:
Traceback (most recent call last):
...
OSError: [Errno 13] Permission denied: 'XXX/pip-0.7.2-py2.7.egg/EGG-INFO/dependency_links.txt'
Storing debug log for failure in /Users/bilt/.pip/pip.log
安装成功后可以在终端中键入pip来检测,如果不行重启终端后尝试.
3.修改pip源
在天朝,由于功夫网的原因,使用pip安装一些模块会特别慢甚至无法下载,因此我们需要修改pip的源到国内的一些镜像地址,特别感谢国内无私奉献的组织~
首先进入HOME路径:
cd ~
创建.pip目录:
mkdir .pip
创建pip.conf文件:
touch pip.conf
大家可以用自己喜欢的编辑器打开pip.conf文件,我现在使用的时v2ex的源,所以添加:
[global]
index-url = http://pypi.v2ex.com/simple
大家可以把index-url的值设置为自己实际源的地址.
至此pip源修改成功,以后使用pip安装模块时都会从这个源去下载安装,大家可以自行测试一下.
三. 其他模块安装
1.Pillow/PIL
想用python处理图片,自然少不了PIL这个模块, 由于PIL长期没有更新了, 所以有了Pillow这个模块, 依赖于PIL, 新版的pip安装后会自带Pillow, 但是好像没有zlib模块, 所以会报错:
File "/Library/Python/2.7/site-packages/PIL/Image.py", line 1105, in paste
im.load()
File "/Library/Python/2.7/site-packages/PIL/ImageFile.py", line 190, in load
d = Image._getdecoder(self.mode, d, a, self.decoderconfig)
File "/Library/Python/2.7/site-packages/PIL/Image.py", line 389, in _getdecoder
raise IOError("decoder %s not available" % decoder_name)
IOError: decoder zip not available
因此我们需要手动重新安装:
sudo pip install -U Pillow
2.MySQLdb
在下面的网址下载mysqldb模块:
http://sourceforge.net/projects/mysql-python/
在mac os x直接双击解压,命令行进入解压后的目录, 执行python setup.py build
如果有
sh: mysql_config: command not found
提示,我们需要编辑下mysql的路径,使用vim打开setup_posix.py
找到:
mysql_config.path = "mysql_config"
改为:
mysql_config.path = "/usr/local/mysql/bin/mysql_config"
然后执行:
sudo python setup.py install
安装成功后,在命令行输入python进入python环境,输入import MySQLdb,我的环境中报下面的错误:
>>> import MySQLdb
Traceback (most recent call last):
File "<stdin>", line 1, in <mole>
File "MySQLdb/__init__.py", line 19, in </mole><mole>
import _mysql
ImportError: dlopen(/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so, 2): Library not loaded: libmysqlclient.18.dylib
Referenced from: /Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so
Reason: image not found
解决方法,我们建立一个软链就可以了
sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
这样我们就在mac os x的python环境下安装好了MySQLdb模块