2

HTSQLでは、多対多の関係を照会できますか?

私のDjangoプロジェクト(アプリ名はconfig)にはChapter、ManyToManyとの関係を持つモデルがありFileNameます。実際のsqlite3データベースを表示すると、テーブルが表示されますconfig_chapter_filenames(もちろん、すべてのdjango管理者は期待どおりに機能しています)。しかし、HTSQLシェルセッションを開くと、テーブルが表示されません。

htsql-ctl shell -E tweak.django sqlite:/mydb.sqlite  -E tweak.meta
/meta(/table)

各モデルのテーブルが一覧表示されますが、多対多の関係は一覧表示されません。

各章のファイル名を一覧表示するクエリを見つけることができませんでした。HTSQLが問題を説明する多対多の関係を認識していない場合、私は推測しています。

何か案は?

htsqlシェルにモデルが表示されます。

config_chapter                         
config_chapter_filenames  

これが私のモデルです:

class Chapter(models.Model):
    book = models.ManyToManyField(Book, through='ChapterMembership')
    parent = models.ForeignKey(Book, related_name = '+')
    filenames = models.ManyToManyField(FileName)

私が試している私のURLは:

http://machinename/htsql/config_chapter{name,filenames}

このエラーが発生します:

bind error: unrecognized attribute 'filenames' in scope of 'config_chapter':
    /config_chapter{name,filenames}
                     ^^^^^^^^^

それ以外の場合は、チャプターと親の名前を照会して取得できますが、ファイル名は取得できません。introspect.pyに変更を加え、Apacheサーバーを停止して再起動しました。他に足りないものはありますか?

もう1つ、htsqlシェルで:

describe config_chapter
Slots for `config_chapter` are:
     id                       integer
     parent_id                integer
     name                     string
     title                    string
     parent                   SINGULAR(config_book)
     config_chapter_filenames PLURAL(config_chapter_filenames)
4

1 に答える 1

1

ティム、

レポートをありがとう、私はこのバグを修正しました: https ://bitbucket.org/prometheus/htsql/changeset/d5dd4e95bcf31f5416b9e17187deebb329e9dd4f

于 2012-09-07T23:11:27.513 に答える