👏
Content Hub Print TempleteをCLIで設定する
はじめに
Content Hubは任意のエンティティをPDFに出力する機能があります。
今回はその手順についてご説明します。
workspaceの初期化をする
CLIを利用することによって、必要なファイルテンプレートが自動的に作成されます。
任意のフォルダに移動していただき以下のコマンドを実行してください。
-n パラメータは任意の値です
ch-cli print initialize -n PCMMock
実行すると、対象のフォルダに初期化されたテンプレートファイル一式が設定されています。
VS Codeで設定する
VS Codeで対象のワークスペースを開くと以下のような表示になっています。
まずは、template.jsonを以下の形式に書き換えます。(variablesに値を追加)
{
"template": {
"output": "OutputName",
"file": "template.cshtml",
"source": {
"type": "entity",
"variables": [
{
"name": "ProductName",
"type": "property",
"property": "ProductName"
}
]
}
}
}
加えて、template.cshtmlに上記で追加したProductNameを記載します。
@using System.Linq
@model Stylelabs.M.Print.EntityGeneration.Models.Model
<html>
<head>
<meta charset="utf-8" />
<link rel="stylesheet" href="template.css" />
<title>Entity Print Template</title>
</head>
<body>
<header>
<h1> @Raw(@Model.Properties["$$ProductName$$"].FirstOrDefault())</h1>
</header>
</body>
</html>
タスク実行でValidateを実行する
タスクの実行を選択し、
Vaildate Print Entity Templateを選択します。
M.PCM.Productと入力します。
設定が上手くいっていると下記のコマンドが表示されます。
Content HubにTemplateをPushする
上記を同様に、タスクの実行からPush Entity Print Templateを選択します。
同様に設定したいスキーマの設定します。(M.PCM.Product)
最後に任意のテンプレートの名称を設定します。
無事にPushされると以下のコマンドが表示されます。
Content Hubの管理画面 > [Pirnt Template]に遷移するとPushしたテンプレートが表示されることが確認できます。
このようにしてTemplateをコマンドから取得し、コマンドベースで設定できる方法をご説明しました。
Discussion