サーバーサイド
Djangoのmanage.pyのコマンドをsystemdから動かして常駐化【データを常にチェックし、Sendgridでメール送信】
【Django】.getlist()でtype="checkbox"のチェックの有無を調べる【複数人の権限の指定に有効】
【Django】getlistを使って複数枚の画像をまとめて送信する【サムネイルが表示される専用フォームあり】
- 作成日時:
- 最終更新日時:
- Categories: サーバーサイド
- Tags: Django JavaScript ウェブデザイン 追記予定
DjangoでManyToManyFieldを使い、中間テーブルのモデルを取得する【多対多のthrough】
例えば、こういうモデル構造の場合、 from django.db import models class Person(models.Model): name = models.CharField(max_length=128) def __str__(self): return self.name class Group(models.Model): name = models.CharField(max_length=128) members = models.ManyToManyField(Person, through='Membership') def __str__(self): return self.name class Membership(models.Model): person = models.ForeignKey(Person, on_delete=models.CASCADE) group = models.ForeignKey(Group, on_delete=models.CASCADE) date_joined = models.DateField() invite_reason = models.CharField(max_length=64) 通常、Groupモデルの、membersフィールドで呼び出せるのは、紐付いているPersonモデルのオブジェクトである。 中間テーブルのモデルであるMembershipではない。 もし、membersフィールドからMembershipモデルのオブジェクトを取り出したい場合は、 group = Group.objects.all().first() memberships = ...DjangoでBootstrapを使う【pip install django-bootstrap-form】
Django-summernoteでアップロード上限を設定する
デフォルトで、Django-summernoteにアップロードできるファイルサイズには上限が設定されている。 こちらで上限を開放できる UPLOAD_SIZE = 200 * 1000 * 1000 SUMMERNOTE_CONFIG = { 'attachment_filesize_limit': UPLOAD_SIZE, 'summernote': { 'width': '100%', 'height': '480', } } 参照: https://stackoverflow.com/questions/74588821/how-to-change-file-upload-size-limit-django-summernote ...Django Summernoteを使ったブログで、本文の画像を記事のサムネイルにするには【BeautifulSoup使用】
【Django】2次元配列をCSVファイルとしてダウロードできるようにする【HttpResponse】
from django.views import View from django.http import HttpResponse import csv class DownloadView(View): def get(self, request, *args, **kwargs): data = [ [ 10,20,30 ], [ 10,20,30 ], [ 10,20,30 ], ] # レスポンスとして返すCSVファイル名 file_name = 'data.csv' # HttpResponseを使ってCSVのデータを書き込む response = HttpResponse(content_type='text/csv') # ファイル名を指定 response['Content-Disposition'] = f"attachment; filename={file_name}" # HttpResponseにCSVファイルデータを書き込む writer = csv.writer(response) writer.writerows(data) return response download = DownloadView.as_view() HttpResponseはこのようにcsv.writer()の引数に指定することができる。 これにより、配列のデータをそのままCSV ...Djangoでfullcalendar.jsを使いTodoアプリを作る
- 作成日時:
- 最終更新日時:
- Categories: サーバーサイド
- Tags: Django JavaScript
fullcalendar.jsを早速実践運用してみた。 まだまだ足りない箇所は有るかもしれないが、ここから徐々に発展させ、ゆくゆくはReactと組み合わせてSPAを作りたいところだ。 詳細はソースコードを見ていただきたい。これまでのDjangoとほとんど変わりはないので、記事内ではfullcalendar.jsの部分だけまとめる。 テンプレート index.html {% load static %} <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1"> <title>To ...