野球リーグスコア管理システムとキャップ野球情報局に関する進捗です。
旧システムについてはこちらの記事をご覧ください。
現行システム(ver.2)ではコメントアウトして提供していない機能ですが、作りかけの残骸を改修しています。
とりあえずログインはできるようになった。
ドメイン未定←これ重要。
フロントに予想以上に時間使ってバックエンド実装できず。
背景色透過は有料機能みたいです。
/league/リーグ名/season/シーズンIDというルーティングへの対応を進めています。新システムではリーグのURLをユーザが決められるようにする予定です。
NodeJSのrouterをこう書いてしまって404エラーしか返ってこなくなって嵌まりました。。。
this.router.get("/:league_name(\\d{1,20})/season/:season_id(\\d{1,3})", this.showStats);
旧システムのDBのダンプをスキーマを変えた新システムにリストアする方法を色々検討した結果、
一旦dockerにDBを2つ用意して新システムにinsert/selectすることにしました。
docker-composeで新たに設定を追加しました。
environment:
#タイムゾーンの設定
- TZ=Asia/Tokyo
#mysqlサーバの起動時に実行するコマンド
#文字セットの設定、SQLモードの設定
command: mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci --sql_mode="STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
新スキーマに移行したのに伴い、DBアクセス周りのプログラムの改修が必要になっています。
interface作ったり、追加したテーブル用にservice(DBアクセスクラス)作ったり。
まだselect関係の機能を元に戻すので手一杯ですが、
insert/update関連の機能を早く実装したい。
去る6/8に行われた公式戦の動画作りましたのでよろしければご覧ください。
- 第一試合
5ケ月前の実装を引き継いでいます。git様様。
行を1つのコンポーネントにまとめて、ボタンで選手人数の変更に対応できるように実装しました。
ボタンは右に寄せようと思ってます。
あと数字入力コンポーネントは3桁入力できる幅でいいかなぁ。
サービス化するにあたって、サービス名の再検討とドメインの取得が必要になりますが、.jpドメインを取得するのでなければ、メール転送サービスがあるGoogle Domainsがよいとのアドバイスをいただきました。
上記に関連して、サービスリリースするならサービス名を再検討することにしました。
最近設計続きであまり外側からわかる進捗がないのですが、
プロジェクト全体の現在の状況です。
これまで、reactプロジェクトをnetlifyにデプロイするため、利便性の観点からreact/NodeJS(バックエンド)プロジェクトを分けていましたが統合しました。
create文(DDL)書き終わったので、現在は現行システム(ver2)のDBをver3システムに移行するSQLを書いているところです。
モダンな開発・運用環境ということでdocker-composeを使ってまずDBコンテナを立てています。順を追ってAPI用のNodeコンテナ、WEBサーバ用にnginxコンテナを立てる予定です。