タグ付けされた質問 「django-queryset」

Djangoクエリセットは、DjangoのORMシステムからオブジェクトを取得するための主要な抽象概念です



5
djangoクエリで同等のsql“ LIKE”
ジャンゴのこのSQL文に相当するものは何ですか? SELECT * FROM table_name WHERE string LIKE pattern; djangoでこれを実装するにはどうすればよいですか?私は試した result = table.objects.filter( pattern in string ) しかし、それはうまくいきませんでした。これを実装するにはどうすればよいですか?

3
Django-外部キープロパティでのフィルタリング
の特定のフィールドの値に基づいてDjangoのテーブルをフィルタリングしようとしていますForeignKey。 たとえば、次の2つのモデルがあります。 class Asset(models.Model): name = models.TextField(max_length=150) project = models.ForeignKey('Project') class Project(models.Model): name = models.TextField(max_length=150) 関連付けられているプロジェクトの名前に基づいてアセットリストをフィルタリングしたいのですが。 現在、2つのクエリを実行しています。 project_list = Project.objects.filter(name__contains="Foo") asset_list = Asset.objects.filter(desc__contains=filter, project__in=project_list).order_by('desc') メインクエリでこの種のフィルタリングを指定する方法があるかどうか疑問に思っていますか?

3
テーブルフィールドから個別の値を選択する
DjangoのORMに頭を悩ませています。私がしたいのは、テーブルのフィールド内の個別の値のリストを取得することです。次のいずれかに相当します。 SELECT DISTINCT myfieldname FROM mytable (または代わりに) SELECT myfieldname FROM mytable GROUP BY myfieldname 生のSQLに頼る前に、少なくともDjangoの方法でやりたいです。たとえば、テーブルの場合: id、street、city 1、メインストリート、ハル 2、その他の通り、ハル 3、Bibble Way、レスター 4、別の方法、レスター 5、ハイストリート、ロンディジウム 入手したい: ハル、レスター、ロンディジウム。

6
Djangoフィルタークエリセット__inリストの*すべての*アイテム
次のモデルがあるとしましょう class Photo(models.Model): tags = models.ManyToManyField(Tag) class Tag(models.Model): name = models.CharField(max_length=50) ビューには、カテゴリと呼ばれるアクティブなフィルターのリストがあります。カテゴリにすべてのタグが含まれている写真オブジェクトをフィルタリングしたい。 私は試した: Photo.objects.filter(tags__name__in=categories) ただし、これはすべてのアイテムではなく、カテゴリ内のすべてのアイテムに一致します。 したがって、カテゴリが['holiday'、 'summer']になる場合は、休日と夏の両方のタグが付けられたPhotoが必要です。 これは達成できますか?

2
django-manytomanyのクエリフィルターが空です
Djangoには、空またはnullのmanytomanyフィールドをフィルタリングする方法があります。 class TestModel(models.Model): name = models.CharField(_('set name'), max_length=200) manytomany = models.ManyToManyField('AnotherModel', blank=True, null=True) print TestModel.objects.filter(manytomany__is_null=True)

2
DjangoでSELECT COUNT(*)GROUP BYとORDER BYを行う方法は?
システムを通過するすべてのイベントを追跡するためにトランザクションモデルを使用しています class Transaction(models.Model): actor = models.ForeignKey(User, related_name="actor") acted = models.ForeignKey(User, related_name="acted", null=True, blank=True) action_id = models.IntegerField() ...... システムでトップ5の俳優を取得するにはどうすればよいですか? SQLでは基本的には SELECT actor, COUNT(*) as total FROM Transaction GROUP BY actor ORDER BY total DESC

4
djangoで個別の列をDISTINCTしますか?
SELECT * FROM...下に" "ではないクエリをDjangoで実行する方法があるかどうか知りたいです。SELECT DISTINCT columnName FROM ...代わりに" " を実行しようとしています。 具体的には、次のようなモデルがあります。 class ProductOrder(models.Model): Product = models.CharField(max_length=20, promary_key=True) Category = models.CharField(max_length=30) Rank = models.IntegerField() ここで、Rankは内のランクCategoryです。そのカテゴリ内の各ランクで何らかの操作を実行しているすべてのカテゴリを反復処理できるようにしたいと思います。 最初にシステム内のすべてのカテゴリのリストを取得してから、そのカテゴリ内のすべての製品をクエリし、すべてのカテゴリが処理されるまで繰り返します。 生のSQLは避けたいですが、そこに行かなければならない場合は問題ありません。Django / Pythonで生のSQLをコーディングしたことはありませんが。


2
多対多のリスト表示django
class PurchaseOrder(models.Model): product = models.ManyToManyField('Product') vendor = models.ForeignKey('VendorProfile') dollar_amount = models.FloatField(verbose_name='Price') class Product(models.Model): products = models.CharField(max_length=256) def __unicode__(self): return self.products 私はそのコードを持っています。残念ながら、エラーはadmin.pyにありますManyToManyField class PurchaseOrderAdmin(admin.ModelAdmin): fields = ['product', 'dollar_amount'] list_display = ('product', 'vendor') エラーは次のように述べています。 'PurchaseOrderAdmin.list_display [0]'、 'product'はサポートされていないManyToManyFieldです。 ただし、を取り出すとコンパイル'product'されlist_displayます。では、エラー'product'をlist_display出さずに表示するにはどうすればよいですか? 編集:たぶん、より良い質問は、あなたが表示されない方法だろうManyToManyFieldにlist_display?


2
TypeError: 'RelatedManager'オブジェクトは反復可能ではありません
Django 次のモデルがあります: class Group(models.Model): name = models.CharField(max_length=100) parent_group = models.ManyToManyField("self", blank=True) def __unicode__(self): return self.name class Block(models.Model): name = models.CharField(max_length=100) app = models.CharField(max_length=100) group = models.ForeignKey(Group) def __unicode__(self): return self.name たとえば、ブロックb1にはg1グループがあります。その名前で、グループg1からすべてのブロックを取得したいと思います。私は次の再帰関数を書きました: def get_blocks(group): def get_needed_blocks(group): for block in group.block_set: blocks.append(block) if group.parent_group is not None: get_needed_blocks(group.parent_group) blocks = [] get_needed_blocks(group) …

2
同じモデルの2つの日付フィールドを比較するDjangoクエリセットフィルターを作成する方法
Solrインデックスでアクティビティレコードが古くなっているクエリを取得しようとしています。Activity.updatedデータベースの日付がActivity.added_toSolr_date同じレコードの日付よりも大きいかどうかを確認したいと思います。 stale_activities_queryset = Activity.objects.filter(updated__gte = self.added_toSolr_date) モデル class Activity(models.Model): # Last time entry / metric was updated in the Activity model database updated = models.DateTimeField( verbose_name="CRUD date") # When it was added to Solr Index Date added_toSolr_date = models.DateTimeField(blank=True, null=True, verbose_name="Added to Solr Index Date") 私は、Djangoのクエリのドキュメントを参照: https://docs.djangoproject.com/en/1.4/ref/models/querysets/ そしてサンプルのためのユニットテスト: https://github.com/django/django/blob/master/tests/ modeltests …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.