我将概述我的工作流程,我想就如何提高工作效率提出一些建议。现在看起来有点麻烦和重复(我讨厌的东西),所以我正在寻找一些改进。请记住,我对 django 以及它的工作原理仍然很陌生,但我是一个非常流利的编码器(恕我直言)。所以这里...
工具(我每天都使用这些,所以我不倾向于改变):
- Mac OSX 豹
- 文本伴侣
- 带标签的终端
- 强制
假设
- Django 基础知识(教程/买了书)
- Python Fluent(运行 2.6 并支持 IDLE)
- 开始我的第一个应用程序在 models.py 上工作
开始
- 创建一个包含整个 django 树的 TextMate 项目。
TextMate 项目 http://img.skitch.com/20090821-g48cpt38pyfwk4u95mf4gk1m7d.jpg
在终端的第一个选项卡中启动服务器
python ./manage.py runserver
在终端窗口的第二个选项卡中启动 shell
python ./manage.py shell
这产生了 iPython,让我开始开发工作流程
工作流程
创建并构建一个名为 models.py 的基本模型
建立一个基本模型
class P4Change(models.Model):
"""This simply expands out 'p4 describe' """
change = models.IntegerField(primary_key=True)
client = models.ForeignKey(P4Client)
user = models.ForeignKey(P4User)
files = models.ManyToManyField(P4Document)
desc = models.TextField()
status = models.CharField(max_length=128)
time = models.DateField(auto_now_add=True)
def __unicode__(self):
return str(self.change)
admin.site.register(P4Change)
- 在第一个终端(正在运行的服务器)中停止它 ^C 和 syncdb 启动服务器
> python ./manage.py syncdb
Creating table perforce_p4change
Installing index for perforce.P4Change model
- 在 shell 终端窗口中加载它..
> python ./manage.py shell
Python 2.6.2 (r262:71600, Apr 23 2009, 14:22:01)
Type "copyright", "credits" or "license" for more information.
IPython 0.10 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object'. ?object also works, ?? prints more.
In [1]: from perforce.models import *
In [2]: c = P4Client.objects.get_or_create("nellie")
- 如果它不起作用,它是否打破了是/否,然后执行以下操作:
- 停止外壳
- 清空数据库
- 重建数据库
- 修复代码
- 重新加载外壳
- 重新加载模块
- 祈祷...
问题/评论/想法
- 是我还是这看起来非常低效?
- 似乎我应该能够重新加载(模块),但我不知道该怎么做..有人吗?
- 似乎我应该能够在 TextMate 中对此进行测试?任何人??
- 即使只是离开外壳,我也必须确认我想离开..
这样做的目的是让你们所有的天才向我展示一种更高效的工作方式。我完全愿意接受合理的建议。我不倾向于改变工具,但我愿意接受批评。