さわぴかのなんでもノート!

学びのアウトプット!なにについて書くかはわかりません!なんでもノートです!

【今日学んだこと】未経験からエンジニアで転職「6週間目その2」

雨ー

今日やったこと

できなかったこと

あと 12/20

けどログイン周りが6こ

明日やること

  • skype朝礼、終礼with MさんEさん
  • 同世代祭りシステムのを進める

細かいところ修正したり

今週やること

  • 勉強しつつ同世代祭りシステムのを進める

ユーザー側 ・あとフォーム送信の時のjobid問題

管理画面 ・ログイン周り

来週やること

  • 勉強しつつ同世代祭りシステムのを進める

めも

Javaのこと

同世代祭りシステムのを進める

今日の流れ

・わかってるバグ、直したいところの洗い出し

・上記を潰す

・できたら見た目も変えていこうかな?


洗い出し(バグも、修正したいところも)

管理画面

  • login画面が2回出てくる問題
  • login状態の管理
  • loginしたユーザーのidをとってnewの時に入れ込む
  • loginしたユーザー情報をとって「こんにちは、〇〇さん」の〇〇に入れる
  • logout周り
  • loginエラーの文言を変えたい
  • 公開状態の順番を公開している方案件を上にくるようにする
  • (応募はいません。のif文)
  • (indexの案件詳細とかの表示する文字数を制限したい)CSS書く時にする
  • login情報の受け取りと表示
  • メールアドレスのバリデーション
  • (パスワードの文字数指定)
  • 編集のところのカテゴリが営業、にならないようにする
  • 空入力のバリデーション
  • アプリ画面での見え方

ユーザー画面

  • (検索した後のカテゴリを選択したカテゴリにする)
  • 同じカテゴリ2つ以上あった時のエラー解決
  • 問い合わせフォームの、job_id入らない問題
  • 問い合わせフォーム、からでも送信できちゃう
  • jobs/2とかにした時のエラー画面を作る(is_enabled=1以外の時の処理)

login周り行くかー

本のSpring Securityとログイン機能周り読む

・メールアドレスのバリデーション done ・

ログイン機能、これみてやってた

Spring bootで、パスワードをハッシュ化して会員登録 & Spring securityを使って、ログイン機能実装。 - Qiita

【login画面が2回出てくる問題】 本より、 アクセスの許可を/jsと/css許可できてなかったから、ログイン2回しちゃってたみたい。

.antMatchers("/js/", "/css/").permitAll()

をWebSecurityConfig.javaに追加して解決

【login周り】 @AuthenticationPrincipal

んー、ログイン周りやり直そう

6.2. Spring Securityチュートリアル — TERASOLUNA Server Framework for Java (5.x) Development Guideline 5.0.0.RELEASE documentation

やっぱちょっとわからんので一旦ここ飛ばそう

【公開状態の順番を公開している方案件を上にくるようにする】

order by is_enabled DESC で問題なく行けた。

f:id:pikahika:20200310140137p:plain
公開が上に

【応募はいません。のif文】

${applications}の中身がだから

<div class="card-body" th:if="${applications} ==

ってしてみたけどうまくいかないな、もう一旦いいや

【indexの案件詳細とかの表示する文字数を制限したい】

https://rfs.jp/sb/html/html-css-lab/overflow_ellipsis.html

文字列を省略して「…」を付与する方法 – CSS/jQuery | Developers.IO

css書かなきゃかー

文字列を省略して「…」を付与する方法 – CSS/jQuery | Developers.IO

んー、かわんないなぁ、、、 飛ばすか。みため直したい時にしよう


【同じカテゴリ2つ以上あった時のエラー解決】

There was an unexpected error (type=Internal Server Error, status=500). nested exception is org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 2 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 2

1つだと設定した記憶ないけど、、、

@Transactional public List searchAll(int category_id) { return jobMapper.searchAll(category_id); }

をListにしたら行けた。Listじゃないととってきたデータ広げれないか

解決

f:id:pikahika:20200310153628p:plain

【検索した後のカテゴリを選択したカテゴリにする】

thymeleaf メモ - 開発まとめ

うーん、ならない

th:selected="*{Category.categoryId}"

を付け加えると、なぜかその他から選択されるし、検索語もその他になる

th:selected="${Category.categoryId} == *{category_id}" も変わらず

飛ばす

【編集のところのカテゴリが営業、にならないようにする】

有力候補

th:selected="${Category.categoryId} == ${job.category_id}"

これで行けたーー

もともと値持ってればいけるのか 検索したパラメーターとってこれたらさっきのもできるのかな

【空入力のバリデーション】

新規作成で何も入れずに作成押したら、カテゴリのところ消えちゃう

エラーの時に入るコントローラーにカテゴリを渡せてなかった。 解決。

【パスワードの文字数指定】

Spring Bootで簡単に入力チェックを実装する方法 - ITを分かりやすく解説

なんでだろー @NotEmpty(message = "名前を入力してください") @Size(min = 8, max = 32, message = "名前は100桁以内で入力してください") とか書いてるのに全然表示されない、何も書かなくても新規登録できちゃう笑

ログインやり直して考えないとなのかな

【問い合わせフォームの、job_id入らない問題】

だと1が出てくるのに

にしたら0になっちゃう

にしたら valueに入れたのが入る

なんでー

本よも

そもそもhiddenであげなくてももともとid入ってるからそれ取ればいいのでは、って思ったり

そして脱線したけどバリデーションの、コントローラpに@Validated入ってなかったからっぽいことに気づいた 明日ここからかなー

バリデーションはかかってるっぽいけどエラーページ出ちゃうな、

戻ってやりたいこと

外部キー設定

マイグレーションはあったけどシーダーはないのかな、調べる

セキュリティ的なの何も気にしてないCSRFあたりってどうするんだろ

インデントの整理

Spring Boot でログイン画面 + 一覧画面 + 登録画面の Webアプリケーションを作る ( その10 )( ログイン画面作成3 ) - かんがるーさんの日記

あとで見る

Spring Bootで使われる基本的なアノーテーションと設定の仕組み (1/3):CodeZine(コードジン)

スネークケース、キャメルケースあたり質問しよ

カテゴリのinsert

joinの仕方 done

カテゴリのプルダウンをDBから done

あとなぜかログインのところがデフォルトの?が最初に表示されちゃう。多分どっかがうまく切り替わってない

エラーページを作る

うーん、複数条件検索ってどうするんだろ

inにするために、先にチェックされたカテゴリのidをカンマ区切りにしてから入れ込むとか、、、?

とりあえずフリーワードの検索orカテゴリ1つバージョンにするか

公開されてない案件 jobs/2 とかにされた時のエラー画面

テンプレートのレイアウトか

手前の詳細部分にはjob_id入ってるんだけどnull?か何かで0でDBに入っちゃう

コードが全体的に汚い、綺麗にしたい

選択したプルダウンを検索語の画面でも保持しておきたい気持ち

管理画面の並び順の変更

コントローラ、増やしたほうがいいのかなーと思いながらjobに集約してしまっている感

カテゴリの編集が、全部営業スタートになっちゃってる

ユーザー側のエラー

【応募はいません。のif文】