[python]解决使用 argparse 时出现:ValueError: unsupported format character 'p' (0x70) at index 8

将程序从 optparse 转到 argparse 后,出现了如下错误:

...
  File "C:\PYTHON26\lib\site-packages\argparse-1.2.1-py2.6.egg\argparse.py", line 230, in format_help
    func(*args)
  File "C:\PYTHON26\lib\site-packages\argparse-1.2.1-py2.6.egg\argparse.py", line 317, in _format_usage
    usage = usage % dict(prog=self._prog ...
more ...

[python]解决 64 位 windows 下使用 pip 安装带 c 扩展的模块时,出现 "ValueError: [u'path']" 错误

今天在 64 位 Windows 下使用 pip 安装 rcssmin 时,出现了如下错误:

...
   File "C:\Python27\lib\distutils\msvc9compiler.py", line 299, in query_vcvarsall

      raise ValueError(str(list(result.keys())))

 ValueError: [u'path']

这是因为在编译 c 扩展程序时,出现了错误。

解决办法是,安装 Visual Studio 2008 Professional x64,并且在安装时选中 x64 compiler tools:

install vs2008

参考

more ...

[django]使用 South 重命名 model 字段名

本文将讲述如何使用 South 重命名表的字段名。

假设应用 foobar 有个 model:

class Foo(models.Model):
    foo = models.IntegerField()

想要将 foo 字段名改为 bar。

  1. 改好 models.py

    class Foo(models.Model):
        bar = models.IntegerField()
    
  2. 执行 south 命令

    # python manage.py schemamigration yourapp rename_field_foo_to_bar --empty
    # 本例是
    python manage.py schemamigration foobar rename_field_foo_to_bar --empty
    
  3. 更改生成的 000x_xxx.py 文件 ...

more ...

[django]使用 South 重命名 model 名称

本文将讲述如何使用 South 重命名表名。

假设应用 foobar 有个 model:

class Foo(models.Model):
    foo = models.IntegerField()

想要将 model Foo 改名为 Bar。

  1. 改好 models.py

    class Bar(models.Model):
        foo = models.IntegerField()
    
  2. 执行 south 命令

    # python manage.py schemamigration yourapp rename_model_foo_to_bar --empty
    # 本例是
    python manage.py schemamigration foobar rename_model_foo_to_bar --empty
    
  3. 更改生成的 000x_xxx.py ...

more ...

[django]解决发送密码重置邮件的发件人是 "webmaster@localhost" 的问题

默认情况下,django 将通过 webmaster@localhost 发送密码重置邮件。

这明显不是我们想要的,更改 settings.py 文件即可修复这个问题。

增加一个配置项 DEFAULT_FROM_EMAIL:

DEFAULT_FROM_EMAIL = 'foo@bar.com'

此时的发件人将会是:foo@bar.com

参考

more ...