このページの概要

最初にJDLで作成したエンティティを更新してみます。

参考になるURLは、

https://www.jhipster.tech/creating-an-entity/

の下のほうに、既存のエンティティの更新についてのやり方が記載してあります。

このページでは、上記の参考ページを見ながら、実際にやってみて気づいたことを書いていきます。

修正したいエンティティの.jsonファイルの特定

まずは、

ls .jhipster

と入力すると、既存のエンティティの.jsonファイルがでてきます。

JDLを編集して変更のあったエンティティだけを修正したい

JHipsterのページでは、jsonのファイルを使った修正が説明されているのかとおもいますが、以下のことを実現する方法を調べてみます。

jdlからエンティティのjsonだけを出力

jhipster jdl ./my-jdl-file.jdl --json-only

以下のコマンドで、変更のあったエンティティだけ、自動生成されるのがデフォルトの動作のようだからもう少し簡単でもいいのでは

jhipster jdl ./my-jdl-file.jdl

どこが修正されたのか確認します。

GitLabの差分表示が見やすいので、いったん、仮のマージリクエストをつくります。

修正したくないファイルは、

git checkout 派生元のブランチ名 修正したくないファイルの相対パス

として、もどします。

一覧に集計結果を加えてレコードを返したい

たいだい、一覧表を返す画面では集計結果を表示させるデザインが好まれる

複数のcountカラムを持つSQLの作成

countで絞り込むことができる!

COUNT(V1.is_absense = '出席' OR NULL) AS attendance

liquibaseでviewを作成

サンプル

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
                   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                   
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog 
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-2.0.xsd">

    <changeSet id="change-column-type" author="joschi">
        <preConditions>
            <tableExists tableName="addressbook_entries"/>
            <tableExists tableName="address_data"/>
            <tableExists tableName="phone_data"/>
        </preConditions> 

        <createView viewName="addressbook">
            SELECT firstname,lastname,street,postcode,city,phone FROM 
addressbook_entries
            JOIN address_data ON addressbook_entries.ID = address_data.entry_ID
            JOIN phone_data ON addressbook_entries.ID = phone_data.entry_ID 
        </createView>
    </changeSet>
</databaseChangeLog>

参考元

https://github.com/joschi/liquibase-presentation/blob/master/demo/08-create-view.xml

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2022-11-29 (火) 13:38:12 (59d)