MacOS下安装Node.js


Node.js

使用 Homebrew 安装 Node.js:

$ brew update
$ brew install node

一般 Node modules 通常被安装在每个项目的本地文件夹 node_modules, 但有几个包推荐你安装在全局:

CoffeeScript Less GruntGulp

$ npm install -g coffee-script
$ npm install -g less
$ npm install -g grunt-cli
$ npm install -g gulp

Npm 使用

安装包:

$ npm install <packag...

阅读全文...

在Mas OS下安装MySQL


MySQL

安装

我们将使用 Homebrew 安装 MySQL,同时也会安装 MySQL 的相关文件。

安装 MySQL:

$ brew update # 这是一个好习惯
$ brew install mysql

在使用 MySQL 前,我们需要做一些设置:

$ unset TMPDIR
$ mkdir /usr/local/var
$ mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp

使用

...

阅读全文...

Mac OS 包管理工具Homebrew


Homebrew

包管理工具可以让你安装和更新程序变得更方便,目前在 OS X 系统中最受欢迎的包管理工具是: Homebrew

安装

在安装 Homebrew 之前,需要将 Xcode Command Line Tools 安装完成,这样你就可以使用基于 Xcode Command Line Tools 编译的 Homebrew。

在 terminal 中复制以下命令(不包括 $),跟随指引,将完成 Hombrew 安装。

$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/...

阅读全文...

Markdown基本语法


段落

非常自然,一行文字就是一个段落。

比如

这是一个段落。

会被解释成

<p>这是一个段落。</p>

如果你需要另起一段,请在两个段落之间隔一个空行。

这是一个段落。

这是另一个段落。

会解释成

<p>这是一个段落<p>
<p>这是另一个段落</p>

不隔一个空行的换行行为,在一些编辑器中被解释为换行,即插入一个<br />标签。对与另外一些编辑器,会被解释为插入一个空格。对于后者,若要插入换行标签,请在当前一行的结尾打两个空格。

粗体、斜体

可以使用星号*或下划线_指定粗体或者斜体。

*这是斜体*
...

阅读全文...

shell脚本入门


====================

什么是Shell脚本

示例

看个例子吧:

#!/bin/sh
cd ~
mkdir shell_tut
cd shell_tut

for ((i=0; i<10; i++)); do
    touch test_$i.txt
done

示例解释

  • 第1行:指定脚本解释器,这里是用/bin/sh做解释器的
  • 第2行:切换到当前用户的home目录
  • 第3行:创建一个目录shell_tut
  • 第4行:切换到shell_tut目录
  • 第5行:循环条件,一共循环10次
  • 第6行:创建一个test_0…9.txt文件
  • 第7行:循环体结束

mkdir, to...

阅读全文...

是否可以在命令行使用Django


虽然django主要用于Web应用程序,但它具有功能强大且易于使用的ORM,也可用于CLI应用程序。要将django脚本用作没有Web服务器的独立脚本,您需要做的就是将以下内容添加到文件的顶部。

import os, sys
if __name__ == '__main__':
    # Setup environ
    sys.path.append(os.getcwd())
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "main.settings")

    # ...

阅读全文...

我可以从Django中的模板访问settings.py中的常量吗?


settings.MEDIA_URL如果您使用django的内置通用视图或在render_to_response快捷方式函数中传入上下文实例关键字参数,Django可以访问模板的某些常用设置常量,例如一些语言设置。以下是每个案例的示例:

from django.shortcuts import render_to_response
from django.template import RequestContext
from django.views.generic.simple import direct_to_template

def my_generic_view(request...

阅读全文...

Django ModelAdmin中的“list_display”可以显示ForeignKey字段的属性吗?


我有一个与Book有外键关系的Person模型。本书有很多领域,但我最关心的是“作者”(标准的CharField)。

话虽如此,在我的PersonAdmin模型中,我想使用“list_display”显示“book.author”。

可以这样:

class UserAdmin(admin.ModelAdmin):
    list_display = (..., 'get_author')

    def get_author(self, obj):
        return obj.book.author
    get_author.short_descript...

阅读全文...

Django中使用MySQL数据库,提示没有名为MySQLdb的模块


这种情况,一般是没有安装Python的MySQL驱动,根据不同的操作系统可以选择安装:

easy_install mysql-python(mix os)
pip install mysql-python(mix os / python 2)
pip install mysqlclient(mix os / python 3)
apt-get install python-mysqldb(Linux Ubuntu,...)
cd / usr / ports / databases / py-MySQLdb && make install clean(FreeBSD)
yu...

阅读全文...

如何处理django MultiValueDictKeyError错误


这个错误经常出现在表单的复选框字段取值中,例如:

is_private = request.POST['is_private']

这样就会出现以上错误,可以改为这样,使用MultiValueDict的get方法。这也出现在标准dicts上,如果不存在,则提供默认值时提取值。

is_private = request.POST.get('is_private', False)

也就是字典的get方法:

my_var = dict.get(<key>, <default>)

阅读全文...