Goqoo on kintone でscaffoldした後に項目を追加して整合性を保ちたい
Goqoo on kintoneでscaffoldでファイルを生成したあとに、フィールドを追加したくなることがある。
kintoneのフォームで項目を変更するとfieldMap.jsonと不整合が発生する。コードジェネーターなので同期する仕組みはないと思う。
結果、カスタマイズビューにおいてvueでfieldMap.jsonを読んでいるため追加した項目がでないということになる。
回避方法
回避方法としては、
1)手でいじれる範囲であれば、fieldMap.jsonを変更する
2)scaffold 別名:同じアプリID
で再度実行する。kintoneの同じアプリIDに対してgoqooはアプリ名を変えれば別と扱うようだ。
そうすると現在のkitone上の情報で、fieldMap.jsonを生成してくれる。
この情報で古いfieldMap.jsonを上書きする。ダミーで作ったscaffoldはいらないので、フォルダをまるごと削除して、config/goqoo.config.ymlからダミーのgoqooアプリ名が入った行を削除する。
3)ginueをつかう
https://github.com/goqoo-on-kintone/ginue
ただし、完全に形式は一致していないようだ。
form.json
{
"properties": [
{
"type": "SINGLE_LINE_TEXT",
"label": "文字列 (1行)",
"noLabel": "false",
"code": "文字列__1行_",
"required": "false",
"minLength": null,
"maxLength": null,
"expression": "",
"hideExpression": "false",
"unique": "false",
"defaultValue": ""
}
]
}
fieldMap.json
{
"文字列__1行_": {
"type": "SINGLE_LINE_TEXT",
"label": "文字列 (1行)",
"noLabel": "false",
"code": "文字列__1行_",
"required": "false",
"minLength": null,
"maxLength": null,
"expression": "",
"hideExpression": "false",
"unique": "false",
"defaultValue": ""
}
}