Loading...

社内システム開発日記:その70

前書き

お疲れ様です!
小手投げです。

もう今週末から初場所です。
今場所は綱取りも大関取りもなく純粋に相撲を楽しめそうです。
関脇に初昇進した正代に注目です。

今回は日記です。

日記

main以外の関数でcontextに保存した変数が参照できない件を調査

会社IDにfavicon.icoが入っている。なんだこれ

dbmapを取ってくる関数を、もしなかったら接続するように変更
ロゴが表示できた

テンプレート中のテンプレートに変数を渡そうとする
指定したテンプレート名の後にドット変数を書くと参照できた

ひとまずログインしてメニュー画面に行くところまでいった

ブログの執筆公開

他社閲覧可能なユーザについて考える
ログイン自体は同じでいいと思う
各関数一律権限チェックを入れないと

main.goが大分長くなってきたので構造体と汎用関数をそれぞれ別ファイルに分ける

権限チェックは
ユーザ情報自体のチェック→なければログイン画面に飛ばす
ロールのチェック、他社閲覧不可なら次へ
ユーザ情報の会社IDとURLパラメータの会社IDをチェック、不一致ならパラメータの会社IDのメニューページに飛ばす

実装
ログイン処理で認証マスタだけとっていたが、ロールマスタもとるように
二つに分けて取っていたが一つの方が扱いやすかろうとjoin

関数を作るたびに中に書くより共通処理したい
前に写経したプログラムでそんなのがあった気が
ただechoじゃないやつなんだよな

とりあえず普通に置いてみる
ログイン画面に飛ぶ→セッションから取得できてない

またfavicon.ico
たまにc.Param(“company_id”)で会社IDがfavicon.icoになる
ParamNameもParamValueもちゃんととれてたのに
Param関数の代替を用意

後書き

他社閲覧可能なユーザだけ複数のDBに接続できるので、どう実装しようか考えてます。

favicon.icoが謎です。

ではまた次回。

情報戦略テクノロジー