hikaru’s diary

Django Engineer

2022-01-01から1年間の記事一覧

【Django】モデルについていろいろ書く#4

前回:【Django】モデルについていろいろ書く#3 - hikaru’s diary最終回です。 アグリゲーション アグリゲーション | Django ドキュメント | Djangoチートシートです。 # ドキュメントから引用 # Total number of books. >>> Book.objects.count() 2452 # Tot…

【Django】モデルについていろいろ書く#3

前回:【Django】モデルについていろいろ書く#2 - hikaru’s diary クエリ作成を見ていきます。 クエリを作成する | Django ドキュメント | Django 下記のようなモデルを作成し、migrateまで実行したとします。 # ドキュメントから引用 from datetime import d…

【Django】モデルについていろいろ書く#2

前回: 【Django】モデルについていろいろ書く#1 - hikaru’s diary リレーション # ドキュメントから引用 リレーショナルデータベースの強力さがテーブル同士の関係によって決まることは疑いがありません。Dango では、最も一般的な 3 つのデータベースリレー…

【Django】モデルについていろいろ書く#1

はじめに 最近書けていなかったのでたまには更新しようかなと思います。 モデルのページを順に読んで気になったところはメモしていくっていう形で書いています。 モデルとデータベース | Django ドキュメント | Django 基本 # ドキュメントから引用 from dja…

【PostgreSQL】ログの文字化けを治す

postgresql.confを編集する。 私の環境ではC:\Program Files\PostgreSQL\14\dataにありました。 # lc_messages = 'Japanese_Japan.932' lc_messages = 'en_US'再起動 pg_ctl -D "C:\Program Files\PostgreSQL\14\data" restart net start postgresql-x64-14 …

md-to-pdfでマークダウンからPDFにする

github.com 公式サイトからnode.jsをインストール https://nodejs.org/ja/download/LTS版の8.11.0をWindowsで使うと「npm WARN config global `–global`, `–local` are deprecated. Use `–location=global` instead.」と出てきて面倒なので私は最新版にして…

【Django】セッションの有効期限を設定する

ソースコード settings.py from datetime import timedelta ***省略*** SESSIOM_COOKIE_AGE = timedelta(days=365).total_seconds() 説明 djangoはデフォルトだと2週間でセッションが切れるので1年に変更しました。 SESSION_COOKIE_AGE = 31536000とするのは…

【Django】Vue.jsを触ってみる

初期値から1秒ごとに1ずつ増えていくアプリです。初期値はviewsから引っ張ってくることとします。 ソースコード scriptはvue.jsのチュートリアルを参考にしています。 test.html <html lang="ja"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Docume…</meta></meta></meta></head></html>

【Django】環境変数を設定する

コマンド一つ一つに環境変数を設定するのすごく面倒臭くなったので。django-environをインストール pip install django-environ manage.pyと同じディレクトリに.envを作成 .env DB_HOST=localhost DB_NAME=postgres DB_USER=postgres DB_PASSWORD=**** SECRE…

【Django】OAuth 2.0を使ってGmail送信

8/2追記:GCPの設定をしなくてもアプリパスワードからパスワードを生成したら出来るそうです。 [Django]Gmailのメールアドレスからメールを送信できるようにする | CodeLab アプリ パスワードでログインする - Google アカウント ヘルプ googleのセキュリティ…

【Django】カスタムした404や500ページを作る

appやconfigと同じ階層の場所にtemplatesフォルダを作成 テンプレートを作成templates/404.html {% extends 'base.html' %} {% block title %}404{% endblock %} {% block content %} <h2>404エラーです。ページが見つかりません。</h2> {% endblock %} templates/500…

【Django】エラーをメール通知する

【Django】500エラーをメールで通知しよう! - hikaru2323’s diary気づいたら動かなくなってたので書き直しました。Gmailです。 settings.py EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_USE_SSL = True EMAIL_PORT = 465 EMAIL_H…

【Python】リストの列集計をする

学生番号、学生名、点数が入っているリストがあったとします。 list = [ [1, 'hikaru', 100], [2, 'taro', 50], [3, 'hanako', 70], [3, 'yuta', 90], [4, 'kota', 60] ] sum = 0 for i in range(len(list)): sum += list[i][2] print("sum", sum) 実行結果:…

BIG5性格診断をやってみた4

前回:BIG5性格診断をやってみた3 - hikaru2323’s diary テストの信頼性 この診断に対する姿勢、自己理解 ≫この検査の信頼性の偏差値は「A」です。(S~Cまでの4段階評価)この結果は信頼できます。とても真剣な態度で受けたことが考えられます。この検査に対…

【Django】formsの属性を変更する

global_numberという変数を複数のフォームクラスで使いまわしているとします。 form2のラベルと最大値を変更します。forms.py from django import forms import datetime global_year = forms.IntegerField(label='年', max_value=3000, min_value=1, initia…

【Django】出勤表ポートフォリオ

出勤表アプリを作っていきます。製作期間は3日ほど。 誤字脱字とかかなり多いと思うので先にgit貼っておきます。開発環境までのgitです。 https://github.com/hikaru1444/django_portfolio_work インストール サーバー起動まで settings app1 urls templates…

workspace.xmlをgit管理から除外する

mv .idea ../.idea_backup rm .idea # in case you forgot to close your IDE git rm -r .idea git commit -m "Remove .idea from repo" mv ../.idea_backup .idea 参考 https://stackoverflow.com/questions/19973506/cannot-ignore-idea-workspace-xml-kee…

【PostgreSQL】バックアップとリストア

バックアップ 例 pg_dump -U ユーザー名 --format=出力形式 --file=出力先 バックアップを取るDB名 私の環境 pg_dump -U postgres --format=p --file=C:\Users\省略\20220427.db postgresパスワード聞かれる出力されたファイルはメモ帳で内容が分かる リスト…

【Django】shellでユーザーを作成

よく忘れるのでメモ from django.contrib.auth.models import User user = User.objects.create_user('name','mailaddress','password') user.save() viewsでの使い方 if request.user.is_authenticated: print("ログイン者:", request.user) else: print("…

【Django】ロギングでサーバーのログをファイルに記録する

はじめに コンソールに出ていたログをファイルにも同時に出力して後から見返すために作成しました。 エラーはメールで通知するようにしているんですけどエラー以外も記録したほうが良いのかなって思ってファイルに記録します。 【Django】500エラーをメール…

BIG5性格診断をやってみた3

4か月ぶり3回目の性格診断です。 前回:BIG5性格診断をやってみた2 - hikaru2323’s diary3回ともマイペースで知的感性が低いというのは一貫しているのでそこら辺対策したほうが良いかもしれないですね。 プログラムエラーでストレス感じることが少なくなって…

【Django】viewsからフォームの初期値を設定する

違うテンプレートでformを使いまわしたいけど初期値は変えたかったので色々調べました。[Django]Formに初期値を設定する方法 https://codelab.website/django-form-initial/ class a(TemplateView): template_name = 'kinmu.html' def b(self, **kwargs): pa…

【Python】要素の比較をする

修正に時間かかったので記事に残します。 ソースコード array = [0, 1, 1, 2, 3, 3, 3, 4, 5] for i in range(len(array)): if array[i] == array[i + 1]: # 追加 print(array[i], end='') # 追加 else: print(array[i]) 実行結果 if array[i] == array[i + …

【Django】認証機能を作る

今回は認証機能を作ります。前回、テスト開始時にコピーされたデータベースが作られると思っていて手こずったのでちゃんとドキュメントを読みながら作ります。 仕様として、(入力が楽になるように)誰がログインしているか?のみ今は使いたいのでカスタムユ…

【Django】テストを書く

ドキュメント はじめての Django アプリ作成、その 5 | Django ドキュメント | Django Django におけるテスト | Django ドキュメント | Django ドキュメントでは「なぜテストが必要なのか?」まで詳しく説明されています。 Djangoを使ってない方でもぜひ見て…