Djangoのsyncdbでgroongaテーブルを作成するSQLを流しこむとエラーが出る件

次の条件のときにDjangoでエラーがおきます。

  • Djangoのデータベース作成コマンド「syncdb」を行うとき

であって

  • 外部SQLとしてgroongaテーブルを作成するとき


次のような流れです。

# python ./manage.py syncdb

Failed to install index for hoge.Huga model: (1005, "name can't start with '_' and 0-9, and contains only 0-9, A-Z, a-z, or _: <#sql-454f_14cb880>")
No fixtures found.

これは接頭語に「 _ 」(アンダーバー)のカラム名があると、そのテーブルにインデックスが張れなくなるエラーです。




Groongaの場合は、_idや_scoreで特別な意味のあるカラムなので、このようなエラーが出てしまいます。




目的は特定の文字列のカラムにgroongaストレージエンジンからインデックスを張って検索することなので、
このまま開発を進めます。