タグ:備忘

blog-image

Pythonでサンプルデータを生成してOpenSearchに取り込んでみよう!

OpenSearchを触り始めるときや、新しい機能の検証をしたいとき、「手頃なサンプルデータがないかな?」って思うこと、ありますよね。 というわけで今回は、サンプルデータをPythonでサクッと生成して、Dockerで動いているOpenSearchに投入するまでの手順を紹介していきたいと思います! この記事では、データ生成に用いたPythonスクリプトの要点も解説します。 前回、作成した環境をベー…

Read More

Docker Composeで爆速構築!OpenSearch + Dashboards環境構築手順

「OpenSearch、ちょっと触ってみたいな」と思ったとき、環境構築でつまずくのはもったいない。 自分自身も最近、業務で使用する必要が出てきました。 今回は、docker-compose を使って、コマンド一つでOpenSearchとOpenSearch Dashboardsの環境をサクッと構築する手順を備忘として残しておきます。 使用しているファイルなどはこちらで確認できます。 1. dock…

Read More

blog-image

DBのデータ削除、どうしてる?3つのパターンを整理

アプリケーションを開発していると、必ずと言っていいほど「データを削除する」という機能が必要になりますよね。ユーザーがアカウントを消したり、投稿を削除したり。一見、「DELETE文で消すだけでしょ?」と思いがちですが、実はデータの削除方法にはいくつかパターンがあって、それぞれにメリット・デメリットが存在します。 今回は、代表的な3つのデータ削除パターンについて、それぞれの特徴を整理してみました。 1…

Read More

blog-image

カラフルボックスでのNext.jsアプリのnproc問題をReactで解決した話

こんにちは!今回は、私がレンタルサーバーのカラフルボックスでNext.jsアプリケーションを運用しようとした際に直面した「nproc占有問題」と、その解決策としてReact(Create React Appなど)ベースのアプリケーションに切り替えた経緯についてお話しします。 きっかけ:レンタルサーバーでのNext.jsアプリ運用 手軽にWebアプリケーションを公開したいと考え、使い慣れたカラフルボ…

Read More

ユーザーに優しい入力制限の作り方

ウェブサイトやアプリを作る時、ユーザーが情報を入力する欄には「入力制限」を設けることがあります。これは、例えば、電話番号を入力する欄に数字以外の文字が入らないようにしたり、名前の欄に決められた文字数以上入力できないようにする、といったものです。 入力制限は、ユーザーが間違った情報を入力するのを防いだり、システムを安定して動かすために必要ですが、制限の仕方によっては、ユーザーをイライラさせてしまうこ…

Read More

DjangoのORMを使用したときの集計関数の使用方法

SQL内で集計をおこなう際に、SQLであれば、「MAX」や「MIN」などと合わせて、「group by」を指定することがある。 ORM使用時は、「group by」を明示的に指定することはないため、少し書き方が違う。 下記のようなモデルがあったとする。 from django.db import models class test_dogs(models.Model): name = models…

Read More

Docker環境のmysql初期立ち上げ時に、実行するSQLの設定

基本的なmysqlの環境構築については、下記を参照。 https://tech.tokiraku.com/archives/37 テンプレート 初期稼働時のSQLを実行するためには、エンドポイントを指定する必要があるらしい。 エンドポイントの名称は docker-entrypoint-initdb.d 。 下記は、それを含んだテンプレートになる。 version: '3' serv…

Read More

Djangoコードテストのカバレッジを測る

テストコードカバレッジとは テストの進捗率、テストの網羅率を指す。これを実行することで、テストが制作したときの観点を網羅できているかを確認することができる。 品質評価の指標にも使用できるため、 網羅率が低い = 品質が低い というように設定することもできる。 モジュールの設定 requirements.txt に下記を追加する。 coverage==6.5.0 実行 下記のコマンドを実行することで…

Read More

DjangoでコードテストをViewクラスに対して行う

基本的なコードの書き方は同じだが、Viewの場合は、URL経由でおこなう必要がある。 テストコードの基本的な書き方は、こちらを参照 https://tech.tokiraku.com/archives/82 REST APIでおこなっていることを前提とした例は次のようになる。 GETメソッド from django.test import TestCase,Client def test_Test…

Read More