Actions
ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、 こちら までご連絡ください。

手動アクションの使用

ライフレイ 7.4 U60+/GA60+

オブジェクトアクションにスタンドアローントリガーを使用すると、アクションは自動ではなく手動になります。 これらのメソッドを使用してこれらのアクションをトリガーします。

この例では、通知を送信するためのスタンドアロンアクションを作成します。

スタンドアロントリガーを使って、あらゆるタイプのオブジェクトアクションを手動で実行することができます。

詳細については、 オブジェクトアクションの定義 を参照してください。

オブジェクトエントリUIを介してアクションをトリガーする

有効なスタンドアロンアクションは、オブジェクトエントリーのアクションメニューに表示されます。 UIでこれらのアクションをトリガーするには、

  1. オブジェクト定義のアプリケーションページに移動します。

  2. 目的のエントリの アクション ボタン (Action Button) をクリックし、スタンドアロン アクションを選択します。

    この例では、アクションは[Send Reminder]です。

    目的のエントリーのアクションボタンをクリックし、スタンドアロンアクションを選択します。

APIによるアクションのトリガー

Liferayは公開されたオブジェクト定義に対してREST APIを自動生成します。 これらには、有効なスタンドアロンアクションのAPIが含まれています。

これらのAPIを表示するには、

  1. Lifera のAPIエクスプローラーを [server]:[port]/o/apiで開きます(例: localhost:8080/o/api)。

  2. RESTアプリケーションをクリックし、目的のオブジェクト定義を選択します。 カスタムオブジェクトは、c/[pluralobjectlabel] の命名パターンを使用します(例: c/tickets)。

各スタンドアロンアクションに対して、Liferayは2つのPUT APIを生成します。1つはエントリーのIDを使用し、もう1つはエントリーの外部参照コード(ERC)を使用します。

Liferayは、エントリーのIDを使うAPIおよびエントリーのERCを使うAPIの2つのPUT APIを生成します。

いずれかのAPIを呼び出すと、指定されたエントリーのアクションがトリガーされます。

APIを呼び出すと、指定されたエントリーのアクションがトリガーされます。

ページ経由でアクションをトリガーする

スタンドアロンアクションをページ上のボタンにマップできます(コンテンツページ または 表示ページテンプレート)。

Liferay のすぐに使用できるボタンフラグメントがユースケースを満たさない場合は、属性 data-lfr-editable-id="action" および data-lfr-editable-type="action" を HTML タグに追加して、アクションをカスタムボタンにマッピングできます。 フラグメントに属性を追加する方法の詳細については、 フラグメント固有のタグと属性のリファレンスを参照してください。

アクション対応のカスタム ボタンの例を次に示します。

<button class="btn btn-${configuration.buttonSize} btn-${configuration.buttonType}"
        data-lfr-editable-id="action" data-lfr-editable-type="action">
    Go Somewhere
</button>

コンテンツページ内のオブジェクトアクションへのボタンのマッピング

  1. ページを作成します

  2. レイアウトに ボタン フラグメントを追加します。 コンテンツ ページの編集方法については、「 コンテンツ ページへの要素の追加 」を参照してください。

  3. ボタンを1回クリックします。 ボタンオプションで、タイプとして アクション を選択します。 これで、ボタンにアクションをマッピングできます。

  4. ボタンをもう一度クリックします。 右側にアクション メニューが開きます。

  5. マッピングタブで、 アイテム フィールド、またはフィールドの横にある アイテムの選択 アイコン (Select Item) をクリックします。

  6. 上部のリストからオブジェクトを選択します。

    使用可能なオブジェクト エントリが下部に表示されます。

  7. 特定のオブジェクト エントリを選択します。

    特定のオブジェクトエントリを選択

  8. ボタンラベルにマッピングする フィールド を選択します。

  9. [アクション] タブで、特定のオブジェクト エントリを選択します。

  10. アクションを選択します。

  11. 必要に応じて、成功とエラーのインタラクションを設定します。 詳細については、 成功とエラーの相互作用の管理 を参照してください。

ヒント

アクションにマップされたコンポーネントを含むコレクション表示フラグメントまたはフォームフラグメントを使用できます。 詳細については、 コレクションの表示 および フォームフラグメントを使用したフォームの作成 を参照してください。

ボタンをクリックすると、選択したアクションが実行されるようになりました。

表示ページテンプレートのオブジェクトアクションへのボタンのマッピング

  1. 表示ページ テンプレートを作成し 、コンテンツ タイプとしてオブジェクトを選択します。

    これにより、ボタンまたはアクションをマッピングするときに、オブジェクトがデフォルトのソースになります。

    表示ページ テンプレートを作成するときに、コンテンツ タイプとしてオブジェクトを選択します。

  2. レイアウトに ボタン フラグメントを追加します。

  3. ボタンを1回クリックします。 ボタンオプションで、タイプとして アクション を選択します。

    この構成により、ボタンにアクションをマッピングできます。

  4. ボタンをもう一度クリックします。

    右側にアクション メニューが開きます。 マッピングおよびアクション タブでは、オブジェクトはすでにデフォルトのソースとして設定されています。

    特定のコンテンツを選択する必要がある場合は、 ソース フィールドをクリックし、 特定のコンテンツを選択して、特定の アイテムを選択します。

  5. ボタンラベルにマッピングする フィールド を選択します。

  6. [アクション] タブで、ユーザーがボタンをクリックしたときにトリガーするアクションを選択します。

  7. 必要に応じて、成功とエラーのインタラクションを設定します。 詳細については、 成功とエラーの相互作用の管理 を参照してください。

ボタンをクリックすると、選択したアクションが実行されるようになりました。

成功とエラーのインタラクションの管理

アクションにマップされたコンポーネントをユーザーがクリックすると、そのアクションが成功または失敗したときに何が起こるかを選択できます。

両方の結果と追加の成功インタラクションには、次の 4 つのオプションがあります。

  1. なし: アクションの実行後に何も起こりません。

  2. 通知を表示: ユーザーに通知します。 カスタムの成功/エラー メッセージを記述し、通知をプレビューし、アクションがトリガーされた後にページをリロードするように構成できます。

  3. ページに移動: サイトの成功/エラー ページに移動します。

  4. 外部 URL に移動: 外部 URL に移動します。

  5. エントリ表示ページに移動 (成功インタラクションのみ): アクションが設定された特定のオブジェクト エントリにマップされている場合、このオプションを成功インタラクションとして選択できます。 ユーザーを表示ページ テンプレートにリダイレクトします。

「エントリ表示ページに移動」は、ユーザーを表示ページ テンプレートにリダイレクトするために使用できる追加の成功インタラクション オプションです。

ユーザーがアクションをトリガーすると、選択したオプションが実行されます。

アクションの権限

Liferayは、どのロールがスタンドアロンアクションをトリガーできるかを管理するための権限を自動的に生成します。 各権限は、action.[actionName]の命名パターン(例: action.sendReminder)に従います。 オブジェクト権限の詳細については、 権限フレームワークの統合 を参照してください。

スタンドアロン権限では、action.actionName 命名パターンが使用されます。