动机
使用Django进行开发的时候,会不会感觉开发工具少了一些。比如每次进入python shell调试的时候要重新import每个model。
简介
django-extensions1目前包含的命令扩展有个:
-
shell_plus: 加强版的Django shell,每次进入为你自动载入项目中所有的model,可以让你很方便的开始调试 -
admin_generator: 只要你提供app label,就会自动为你输出定义的Admin Class代码,默认输出在stdout -
clean_pyc: 移除项目中所有的pyc文件 -
create_command: 为一个app生成自定义命令所需要的目录结构。 -
create_template_tags: 为一个app生成template tag所需要的目录结构。 -
clear_cache: 清除缓存,在测试和开发环境很有用 -
compile_pyc: 为项目编译python字节码 -
describe_form: 生产一个model的form代码,你可以将它拷贝到你的文件 -
delete_squashed_migrations: 删除残留的squash migration文件 -
dumpscript: 生产一个python 脚本,用来重新填充数据库 -
export_emails: 为你的用户生成email地址 -
graph_model: 创建基于model的GraphViz2文件. -
mail_debug: 开启一个邮件服务器,它会打印邮件内容而不是把它发送出去 -
merge_model_instances: 合并重复的model instance -
notes: 展示代码中所有的 TODO, FIXME, BUG, HACK, WARNING, NOTE, XXX 的地方 -
passwd: 轻松修改用户密码 -
pipchecker: 检查pip是否有过期的packages,类似于pip list -o,只用于已安装的packages -
print_settings: 展示所有的,或者指定的django settings -
print_user_for_session: 通过session来找到user,并且打印 -
drop_test_database: 删除测试数据库 -
reset_db: 使用DROP DATABASE和CREATE DATABASE来重置数据库 -
runprofileserver: 开启一个激活了profile功能的开发服务器 -
runscript: 在django上下文中运行一个脚本 -
runserver_plus: 标准的runserver加上Werkzeug的debugger工具 -
set_fake_emails: 根据用户的数据,为所有用户设置一个虚构的email -
show_template_tags: 展示当前项目可用的template tags和template filters -
show_urls: 展示当前项目所有定义的urls -
sqldiff: 展示model和数据库是否结构不一样,如果有不一样的地方就展示出来 -
sqlcreate: 根据你的settings.py定义,为你生成创建数据库的SQL代码 -
sqldsn: 根据settings.py定义的数据库配置,返回一个可以用于其它程序的数据库URI -
sync_s3: 将MEDIA_ROOT的文件复制到S3 -
update_permissions: 重载权限 -
validate_templates: 确认template是否有语法错误
个人评分
| 类型 | 评分 |
|---|---|
| 实用性 | ⭐️⭐️⭐️⭐️⭐️ |
| 易用性 | ⭐️⭐️⭐️⭐️ |
| 有趣性 | ⭐️⭐️⭐️⭐️ |