SpringおよびJPAベースのWebアプリケーション開発#42トピックの参照

5763 ワード

SpringおよびJPAベースのWebアプリケーション開発#42トピックの参照
これらはインフラストラクチャ、Spring、JPAベースのWebアプリケーション開発のコースに基づいて作成されています.

要約は、学習コース、要約ソースのタグ付け、ブログまたはドキュメント形式で公開できるようにする原則の下で公開されます.出典は前述の通り、インフラストラクチャ、Spring、JPAベースのWebアプリケーション開発.
私が勉強しているソースコードはhttps://github.com/n00nietzsche/jakestudy_webappにアップロードされます.私は伝言ごとに講義のどの部分を記録します.

SettingsController


updateTagForm()メソッドの内容の変更

    @GetMapping(TAGS_MAPPING_PATH)
    public String updateTagForm(@LoginAccount Account loginAccount, Model model) {
        model.addAttribute(loginAccount);
        model.addAttribute("tags"
                , loginAccount.getAccountTags()
                        .stream()
                        .map(AccountTag::getTag)
                        .map(Tag::getTitle)
                        .collect(Collectors.toList())
        );

        return TAGS_MAPPING_PATH;
    }
現在のAccountにあるAccountTagsの情報をそのまま伝えます.その後、Tag内部のtagTitleフィールドをList<String>フォーマットに変換し、それをドロップする.

tags.htmlコンテンツの追加

...
<input id="tags" type="text" name="tags" th:value="${#strings.listJoin(tags, ',')}"
                           class="tagify-outside" aria-describedby="tagHelp">
...
"${#strings.listJoin(tags, ',')}"により、Listのコンテンツを"element1,element2,element3"と同じフォーマットに変換することができる.このようにvalueに入れると、Tagifyinputの値を正確に解釈することができる.