私はPostgres整数配列フィールドにマップするコンマで区切られた整数フィールドを持つモデルクラスを持っています。私が行うことができるようにしたいどのようなCommaSeparatedIntegerFieldのインデックス値でのフィルタリング
class Observation(models.Model):
frequencies = models.CommaSeparatedIntegerField(max_length=200)
は、フィルタ(または何か他の適切な)配列のインデックス付き値の比較を行うためのインターフェースを使用しています。 例:
Observation.objects.filter(frequencies[100]__equals = 10)
私はこれを行うことはできませんし、私はどのようにフィルタインタフェースのインデックス配列フィールドをするドキュメントで見ることができません知っています。私はこのアクションをデータベース内のSQLで実行したい(コード内で行う必要があるかもしれない)。
私はextra()機能を使用できますが、より良い方法があるかどうかを知りたいと思いますか?
ありがとうございました。
DBレイヤーでその配列を検索する方法があるのは疑いがあります。そのフィールド型は(少なくともMySQLでは)チャーフィールドとして保存されているからです。 SUBSTRING()でextra()を使用することは、私にとって最善の方法です:http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_substr – AJJ