DRF: Userを所属グループで検索

django-filters: Userを所属グループで検索 Django REST Frameworkとdjango-filterを使って、Userが所属しているGroupを複数指定して検索することはできます。 以下のように、django-filter.FilterSetを継承したフィルタセットを定義し、filters.ModelMultipleChoiceFilterを使って、Userが所属しているGroupを複数指定することができます。 1 2 3 4 5 6 7 8 9 10 11 12 13 from django.contrib.auth.models import User, Group import django_filters class UserFilter(django_filters.FilterSet): groups = django_filters.ModelMultipleChoiceFilter( field_name='groups__name', to_field_name='name', queryset=Group.objects.all() ) class Meta: model = User fields = ['username', 'groups'] 上記の例では、Userモデルに対するフィルタセットを定義しています。groupsフィールドには、django_filters.ModelMultipleChoiceFilterを使って、Userが所属しているGroupを複数指定することができます。field_nameには、Userモデルのgroups__nameフィールドを指定し、to_field_nameには、Groupモデルのnameフィールドを指定しています。 ...

2023年4月23日 · 1 分

Django: User ログインシグナル

Django: User ログイン ログインシグナル Djangoでログインした時のイベントをシグナルで受け取る方法については、Djangoの公式ドキュメントに詳しく記載されています¹。以下のように、django.contrib.auth.signals.user_logged_inシグナルを使用して、ログイン時に実行する関数を定義し、receiver()デコレーターでシグナルを受信する関数を登録します。 1 2 3 4 5 6 7 from django.contrib.auth.signals import user_logged_in from django.dispatch import receiver @receiver(user_logged_in) def user_logged_in_callback(sender, request, user, **kwargs): # ログイン時に実行する処理 pass このように、シグナルを使用することで、ログイン時に任意の処理を実行することができます。 ソース: Bing との会話 2023/4/21 (1) 「超簡単」Djangoでログインページの実装 - Qiita. https://qiita.com/Yuji-Sakata0110/items/3722fa651e02eafc4d01. (2) 【Django】ログイン・ログアウト機能の実装 - Qiita. https://qiita.com/onishi_820/items/c69ebb6a4e34da0f34d4. (3) Django パスワード試行回数ロックとランダムかつ有効期限付き …. https://qiita.com/startours777/items/5b1fc415e047a2044129.

2023年4月21日 · 1 分

半角カナ文字

半角カナ文字 Pythonで半角カナ文字かどうかを判定するには、正規表現を使う方法があります。⁴⁶ 例えば、次のような関数を定義して、文字列が半角カナだけで構成されているかどうかをチェックできます。 1 2 3 4 import re def is_hankaku_kana(s): return re.match(r"^[ヲ-゚]+$", s) is not None この関数は、文字列sが半角カナの範囲(ヲから゚)にマッチするかどうかを判定します。⁶ 他の言語(JavaScriptやC#など)でも同様の方法が使えます。¹² ソース: Bing との会話 2023/4/18 (1) python 正規表現を使った文字列チェック【ひらがな・カタカナ …. https://qiita.com/mocha_xx/items/00c5a968f7069d8e092c アクセス日時 2023/4/18. (2) Pythonで正規表現を使って数値/英字チェックを実装する (コピペ …. https://www.sukerou.com/2018/12/python.html アクセス日時 2023/4/18. (3) [JavaScript] 全角カナ、半角カナの判定を行う方法 - YoheiM .NET. https://www.yoheim.net/blog.php?q=20191105 アクセス日時 2023/4/18. (4) [C#共通関数] 半角カナチェックFunction - C#ちょこっとリファレンス. https://csharp.programmer-reference.com/function-check-han-kana/ アクセス日時 2023/4/18. (5) 文字がひらがなか、カタカナか、漢字か、英数字か調べる - .NET …. https://dobon.net/vb/dotnet/string/ishiragana.html アクセス日時 2023/4/18. (6) python - 半角数字・文字のチェック方法 - スタック・オーバーフロー. https://ja.stackoverflow.com/questions/90953/%E5%8D%8A%E8%A7%92%E6%95%B0%E5%AD%97-%E6%96%87%E5%AD%97%E3%81%AE%E3%83%81%E3%82%A7%E3%83%83%E3%82%AF%E6%96%B9%E6%B3%95 アクセス日時 2023/4/18. 半角カナ文字を判定するPYPIパッケージはありますか? 半角カナ文字を判定する専用のPYPIパッケージは見つかりませんでしたが、標準ライブラリのunicodedataモジュールを使うことができます。¹ ...

2023年4月18日 · 2 分

Django: Admin: ManyToManyField Inline (raw_id_fields)

Django: Admin: ManyToManyField Inline (raw_id_fields) raw_id_fields and ManyToMany in Django admin 手順: ManyToManyField を exclude にいれて表示させないようにする Inline Admin を定義する. model には through を定義する 対象モデルフィールドを raw_id_fields に入れる

2023年4月16日 · 1 分

eleventy/11ty

eleventy/11ty eleventyとは、静的サイトジェネレーターの一種です¹²³。静的サイトジェネレーターとは、ビルドにより静的なHTMLファイルを生成するツールのことです³。eleventyの特徴は、以下のようなものがあります¹²³。 テンプレートエンジンが自由に選べる。NunjucksやLiquid、Markdownなど、様々なテンプレートエンジンを使うことができます¹²³。 CSSやJSファイル周りの処理がシンプル。eleventyはCSSやJSファイルをそのままコピーするだけでなく、SassやBabelなどのプラグインを使って変換することもできます¹。 データファイルを利用できる。JSONやYAMLなどのデータファイルをテンプレートに渡して、動的にコンテンツを生成することができます¹³。 ページネーションやコレクションなどの機能が豊富。ブログ記事やカテゴリーなどのコレクションを作成したり、ページネーションやタグなどの機能を利用したりすることができます¹³。 以上がeleventyについての情報です。興味があれば、公式サイトやドキュメントを参照してみてください。 ソース: Bing との会話 2023/4/15 (1) 静的サイトジェネレーター 11ty/eleventy をもっと使ってみる - Qiita. https://qiita.com/yuzuru_xa/items/c2148a9ce31f852d8c9a アクセス日時 2023/4/15. (2) 11ty(eleventy)で静的サイト構築 | 株式会社 エヴォワークス …. https://www.evoworx.co.jp/blog/11ty-static-site-generator/ アクセス日時 2023/4/15. (3) 静的サイトジェネレーターEleventy 第1回 Eleventyとその特徴 …. https://www.codegrid.net/articles/2019-11ty-1/ アクセス日時 2023/4/15.

2023年4月15日 · 1 分

F値

F値 F値とは、カメラのレンズから入る光の量を数値化したもので、絞り値とも呼ばれます¹。 F値が小さいと絞りが開き、光がたくさん入ります。 F値が大きいと絞りが絞られ、光が少なく入ります²。 F値は、F1.4、F2、F2.8、F4、F5.6、F8などの基準値があり、F値を一つずらすと光の量が2倍か半分になります¹⁴。 F値は、写真の明るさやボケ具合に影響します³⁵。 ソース: Bing との会話 2023/4/15 (1) F値とは – F値と明るさ、ボケ量の関係 | 姫野ばら園 八ヶ岳農場. https://himenobaraen.jp/column/camera/f_number アクセス日時 2023/4/15. (2) 絞り(F値)とAモード | 撮影の基礎知識 | デジタル一眼カメラ α …. https://www.sony.jp/support/ichigan/enjoy/photo/word6.html アクセス日時 2023/4/15. (3) 【f値(絞り値)】の初心者向け解説とプロのおすすめ設定 …. https://camera-web.jp/beginner/fnumber アクセス日時 2023/4/15. (4) 【初心者必見】F値で写真の表現が変わる!絞りと露出の基本と …. https://www.ortery.jp/ec-blog/camera-aperture/ アクセス日時 2023/4/15. (5) F値(絞り)とは?初心者でも理解できる設定とシチュエーション. https://goopass.jp/magazine/f-setting/ アクセス日時 2023/4/15. 開放F値 開放F値とは、そのレンズが使える最小のF値です¹。 開放F値が小さくても撮影時の設定でF値を大きくもできるので、F値を調整して明るさやボケ具合を変えられます¹²。 開放F値はレンズごとに異なり、レンズの製品名に表示されています²³。 例えば、30mm F1.4というレンズは、開放F値がF1.4です²。 ソース: Bing との会話 2023/4/15 (1) https://47prefectures.com/maximum-aperture/#:~:text=%E9%96%8B%E6%94%BEF%E5%80%A4%E3%81%A8%E3%81%AF%E3%80%81%E3%81%9D%E3%81%AE%E3%83%AC%E3%83%B3%E3%82%BA%E3%81%8C%E4%BD%BF%E3%81%88%E3%82%8B%E6%9C%80%E5%B0%8F%E3%81%AEF%E5%80%A4%E3%81%A7%E3%81%99%E3%80%82%20%E9%96%8B%E6%94%BEF%E5%80%A4%E3%81%8C%E5%B0%8F%E3%81%95%E3%81%8F%E3%81%A6%E3%82%82%E6%92%AE%E5%BD%B1%E6%99%82%E3%81%AE%E8%A8%AD%E5%AE%9A%E3%81%A7F%E5%80%A4%E3%82%92%E5%A4%A7%E3%81%8D%E3%81%8F%E3%82%82%E3%81%A7%E3%81%8D%E3%82%8B%E3%81%AE%E3%81%A7%E3%80%81F%E5%80%A4%E3%82%92%E8%AA%BF%E6%95%B4%E3%81%97%E3%81%A6%E6%98%8E%E3%82%8B%E3%81%95%E3%82%84%E3%83%9C%E3%82%B1%E5%85%B7%E5%90%88%E3%82%92%E5%A4%89%E3%81%88%E3%82%89%E3%82%8C%E3%81%BE%E3%81%99%E3%80%82,%E3%81%A7%E3%81%AF%E3%80%81%E3%81%9D%E3%82%82%E3%81%9D%E3%82%82F%E5%80%A4%E3%81%A8%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%97%E3%82%87%E3%81%86%EF%BC%9F%20F%E5%80%A4%E3%81%A8%E3%81%AF%E5%85%89%E3%82%92%E5%8F%96%E3%82%8A%E8%BE%BC%E3%82%80%E5%BA%A6%E5%90%88%E3%81%84%E3%82%92%E6%95%B0%E5%80%A4%E5%8C%96%E3%81%97%E3%81%9F%E3%82%82%E3%81%AE%E3%81%A7%E3%80%81%E3%83%AC%E3%83%B3%E3%82%BA%E3%81%AE%E6%9C%89%E5%8A%B9%E5%BE%84%E3%82%92%E7%84%A6%E7%82%B9%E8%B7%9D%E9%9B%A2%E3%81%A7%E5%89%B2%E3%81%A3%E3%81%9F%E5%80%A4%E3%81%A7%E3%81%99%E3%80%82%20%E3%80%8E%E3%83%AC%E3%83%B3%E3%82%BA%E6%9C%89%E5%8A%B9%E5%BE%84%C3%B7%E7%84%A6%E7%82%B9%E8%B7%9D%E9%9B%A2%3DF%E5%80%A4%E3%80%8F%E3%81%A8%E3%81%84%E3%81%86%E5%BC%8F%E3%81%AA%E3%81%AE%E3%81%A7%E3%80%81%E3%83%AC%E3%83%B3%E3%82%BA%E3%81%AE%E5%BE%84%E3%81%8C%E5%A4%A7%E3%81%8D%E3%81%84%E3%81%BB%E3%81%A9%E5%85%89%E3%81%8C%E5%85%A5%E3%82%8B%E3%81%97%E3%80%81%E7%84%A6%E7%82%B9%E8%B7%9D%E9%9B%A2%E3%81%8C%E9%95%B7%E3%81%8F%E3%81%AA%E3%82%8B%E3%81%BB%E3%81%A9%E5%85%89%E3%81%8C%E5%85%A5%E3%82%8A%E3%81%AB%E3%81%8F%E3%81%8F%E3%81%AA%E3%82%8B%E3%81%A8%E3%81%84%E3%81%86%E6%84%8F%E5%91%B3%E3%81%A7%E3%81%99%E3%80%82. https://bing.com/search?q=%e9%96%8b%e6%94%beF%e5%80%a4 アクセス日時 2023/4/15. (2) デジタル一眼レフカメラの基礎知識 - レンズ | Enjoyニコン …. https://www.nikon-image.com/enjoy/phototech/manual/19/03.html アクセス日時 2023/4/15. (3) F値(カメラの絞り)・開放絞り値とは?(写真入り解説 …. https://www.mori-camera.com/basic/f.htm アクセス日時 2023/4/15. (4) 3分でわかるαレンズのヒミツ TIPS:F値 編 | ソニー - Sony. https://www.sony.jp/feature/contents/a/3minutes_f-number_lp/ アクセス日時 2023/4/15.

2023年4月15日 · 1 分

Celery: Singleton Task

Celery: Singleton Tasks SingletonTask 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 from celery.app.task import Task from celery.utils.log import get_task_logger from django.core.cache import cache logger = get_task_logger(__name__) class SingletonTask(Task): def __call__(self, *args, **kwargs): self.lock_key = self.resolve_lock_key(*args, **kwargs) if not self.request.is_eager and self.lock_key: # ロックキーが指定されて、 非同期モードであればシングルトンで動作させる return self.call_singleton(*args, **kwargs) # それ以外はデフォルトの動作 return super().__call__(*args, **kwargs) def resolve_lock_key(self, *args, **kwargs): """ taskに `singleton` キーワード変数でキーが指定されていたらシングルトンモード """ singleton = kwargs.get("singleton", None) return singleton and f"{self.name}-{singleton}" def prepare_execute(self, *args, **kwargs): """ シングルトンタスクの実行の前に何かする""" pass def call_singleton(self, *args, **kwargs): lock = cache.lock(self.lock_key) if not lock.acquire(blocking=False): # 取得できなかったら何もしない(同じような冪等処理がすでに動いている) logger.info("{} failed to lock:".format(self.lock_key)) return "SKIPPED" self.prepare_execute(*args, **kwargs) try: # 実際のタスクを実行 return super(SingletonTask, self).__call__(*args, **kwargs) except Exception as e: logger.error(f"task faiild:{e}") lock.release() raise e finally: lock.release() サンプル 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 class CostSingletonTask(SingletonTask): def prepare_execute(self, *args, **kwargs): """実行前に設定時間(秒)でsleepする この間の重複処理が行われない """ logger.error(f"LOCK ACQUIRE:{self.lock_key}") logger.error(f"CALLING:{args} {kwargs}") logger.info(f"Sleep for ASYNC_WINDOW({settings.ASYNC_WINDOW})") sleep(settings.ASYNC_WINDOW) @shared_task(base=CostSingletonTask) def info(message, singleton=None): logger.error(f"Executing:{message}") return message リンク Celery: Task Singleton? Ensuring a task is only executed one at a time

2023年4月12日 · 1 分

Celery: タスクの結果をMySQLで確認する

Celery: タスクの結果をMySQLで確認する PYPI: django-celery-results = "^2.5.0" settings: 1 2 3 CELERY_RESULT_BACKEND = "django-db" CELERY_RESULT_EXTENDED = True INSTALLED_APPS += ["django_celery_results"] Database Result Backend It seems that you are using Django and Celery to run asynchronous tasks and store the results in a database. One possible reason why the result data is always null is that you are not returning anything from your task function². For example, if your task function looks like this: ...

2023年4月12日 · 3 分

Celery: eager モード (同期モード)

Celery: Eagerモード settings: 1 2 CELERY_TASK_ALWAYS_EAGER = True CELERY_TASK_STORE_EAGER_RESULT = True unittest Testing with Celery Eagerモードの確認 Hello, this is Bing. Celery is a distributed task queue for Python. Eager mode is a setting that makes Celery run tasks synchronously in the same process as the caller, instead of sending them to a worker¹². This can be useful for testing, but it may not reflect the actual behavior of the tasks in a worker¹². To check if a running Celery task is in eager mode, you can use the is_eager attribute of the task request object³. For example: ...

2023年4月11日 · 1 分

Python: ジョブキューイング

タスクキューシステム Full Stack Python Celery https://docs.celeryq.dev/en/stable/ PYPI: celery redis django-celery-results django-redis Redis: Using Redis poetry add "celery[redis]" djang-celery-results: django-celery-results - Using the Django ORM/Cache as a result backend poetry add django-celery-results Periodic Task: Periodic Tasks 記事: 【Django】CeleryとRedisで非同期処理を実装する方法 DjangoとCeleryを使った非同期処理の結果取得までの流れ 【Python x Django】Djangoによる非同期処理実装(Cerery,Redis) Deploying Django on AWS: Setting up Celery and SQS Celery Task Queue with AWS SQS MySQL:Database returned an invalid datetime value. Are time zone definitions for your database installed? macOS: ...

2023年4月7日 · 1 分