Fabricの0.9.2から、 Django Integration という機能があるようです。
これを使うと、FabricからDjangoのコードを呼ぶことができます。
先日紹介した factory_boy と組み合わせると:
# -*- coding: utf-8 -*-
from fabric.api import task
from fabric.contrib import django
# Djangoのコードのimportの前にこれを書く
django.project('fabric_django')
from example.factories import BookFactory
@task()
def generate_books():
for i in range(10):
BookFactory()
これでWeb上の動作確認をするためのデータを生成することもできます。
今まで、私はこういったことをやるために、Djangoのコマンドを自作していたのですが、こちらの方が簡単に書けそうでいいですね。