フォーム
あらかじめ用意された問い合わせ、見積もり、予約、登録フォームです。AIがコンポーネントひとつで配置するため、送信ハンドラーを書く必要はなく、すべての送信内容がアプリの送信受信トレイに届きます。
Proyecta のフォームは機能(capability)であり、AIが手でコーディングするものではありません。訪問者がコンタクトを取るための手段 — 問い合わせフォーム、見積もり依頼、予約、イベント申し込み — が必要になると、Proyecta は既製のフォーム定義をプロビジョニングし、テンプレート固有のブロックを通じてレンダリングします。バリデーション、送信成功時の表示、送信データの保存、オーナーへの通知はすべて自動で提供されます。
すべてのフォームは5つの組み込みプリセットのいずれかから始まります。欲しいフォームを説明すると、Proyecta が適切なものを選択(および調整)するので、フィールドをゼロから作る必要はありません。
| プリセット | form api id |
用途 | 組み合わせ対象 |
|---|---|---|---|
| 問い合わせ | contactForm |
一般的な「ご連絡」:名前、メール、任意の電話番号、メッセージ | ビジネス情報 |
| 見積もり | quoteForm |
見積もり依頼:連絡先 + サービス選択 + 作業内容 | サービス |
| 予約 | bookingForm |
アポイントメント:サービス、希望日時、連絡先 | サービス |
| 登録 | registrationForm |
イベントやコースへの申し込み(RSVP):参加者情報 + メモ | イベント |
| 注文 | orderForm |
注文の受付:お客様のご希望、連絡先、メモ | メニュー、カタログ |
1つのアプリに複数のフォームを設置することも可能で(例:問い合わせフォームと予約フォームを同時に)、AIはそれぞれのフォームに対してフィールドの追加、名前変更、構成変更を行うことができます。
AIによる配線の仕組み
Section titled “AIによる配線の仕組み”AIがフォームや送信ハンドラーを手でビルドすることはありません。テンプレート固有の <FormBlock/> を配置し、idまたはapi idでフォームを指定するだけです:
import { FormBlock } from '@/components/blocks/FormBlock';
// 公開ページのどこにでも — お問い合わせセクション、「見積もりを依頼」パネルなど<FormBlock form="contactForm" />;<FormBlock/> はすべてを自律的に行います:
- フィールドの種類に応じたレンダリング — テキスト・メール・電話番号はinput、長文テキストはtextarea、選択肢はドロップダウン、オプトインはチェックボックス、日付と時刻はネイティブピッカー、ファイルフィールドは「ファイルを添付」コントロールとして表示されます。
- ブラウザ上でのバリデーション — 必須フィールドは送信前に確認されます。
- サーバーサイドのバリデーション — サーバーが値を拒否した場合、該当フィールドの横にエラーがインラインで表示されます(送信の消失やサイレントエラーは発生しません)。
- 送信成功時の表示 — 送信後、フォームはフレンドリーな確認メッセージ(フォーム固有の確認文)に切り替わり、追加送信のオプションも表示されます。
- 安全なフォールバック — フォームが存在しないか無効化されている場合、ブロックは何もレンダリングしないため、公開ページが壊れることはありません。
ブロックはテンプレート固有のため、AIはそれを配置して周囲のセクションをスタイリングするだけでよく、背後の仕組みは固定されており正確です。
ファイル添付
Section titled “ファイル添付”フォームにはファイルのアップロード(領収書、参考写真、ブリーフなど)を受け付けることができます。ファイルフィールドは「ファイルを添付」ボタンをレンダリングし、ファイルをストレージにアップロードして、その公開URLを送信データに含めます。制限は自動的に適用されます:
- 画像とPDFのみ、5 MB まで(大きな画像はブラウザ上で事前に縮小されます)。
- ファイルのアップロード中は送信ボタンが無効化されるため、送信が中途半端に完了することはありません。
送信データの保存先
Section titled “送信データの保存先”すべての送信データは保存され、アプリの送信受信トレイに表示されます。これは管理パネルの一部で、テンプレートの <SubmissionsInbox/> によってレンダリングされます。そこからオーナーは以下を行えます:
- New / Read / Archived タブで送信を閲覧(New には未読バッジが表示されます)。
- 任意の送信を開いて、送信されたフィールドの値、送信元ページ、日付を確認する。
- 送信を read にマーク、new に戻す、またはarchive する。
- 受信トレイを特定のフォームに絞り込むか、すべてのフォームの送信を一覧で表示する。
受信トレイは管理者専用です — 閲覧には管理者アカウントでのサインインが必要です(サーバーサイドで強制されます)。
送信のたびにメールを受け取る
Section titled “送信のたびにメールを受け取る”フォームは誰かが送信するたびにメールで通知することができます — オーナー通知をオンにして、受信するアドレスを設定してください。アプリを開かなくても受信トレイでリードを確認できます。メールはProyecta のメール機能を通じて送信されるため、追加設定は不要です。
よくある使い方(AIに任せるだけ)
Section titled “よくある使い方(AIに任せるだけ)”"フッターに名前、メール、メッセージのある問い合わせフォームを追加して、誰かが送信するたびにhello@mybiz.comにメールを送って。""各サービスページに「見積もりを依頼」フォームを追加して、必要なサービスと作業内容を入力できるようにして。""クライアントが希望日時で予約リクエストを送れるように予約フォームを追加して。""ワークショップページにイベント登録フォームを作成して、参加者がPDFを添付できるようにして。""送信受信トレイを表示して、まだ読んでいないものだけ見せて。"