7

コンテンツ タイプ (Meter など) を作成しようとしています。各メーターは「検針」で構成されています。この検針内容には、タイトル、日付範囲、使用状況などの 3 つのフィールドが含まれています。親メーターに関連するすべてのメーター読み取り値を表示するパネル ページがあります。メーター読み値を表形式で表示しました。

ユーザーがデフォルトのメーター リーディング作成ページに移動せずに、新しいメーター リーディングを追加できるようにしたいと考えています。デフォルトのフォームの種類のページではなく、ユーザーは提供されたテーブル ビューにデータを入力でき、プロジェクト自体に自動的に保存される必要があります。

だから、私は機能が次のようになりたい:-

  1. 編集と削除の 2 つのリンクですべての検針値を表示します。
  2. ユーザーが [編集] リンクをクリックすると、検針行が編集可能になり、ユーザーは同じテーブル内でインラインで変更できるようになります。
  3. フッターには、新しい検針を追加するためのリンクが必要です。ユーザーがそれをクリックすると、新しい空白行がテーブルに動的に追加され、ユーザーが新しいエントリを作成できる必要があります。

Drupal 7 にはそうするためのモジュールがありますか?? SlickGridjQGridjEditableなど、このためのいくつかのモジュールをすでに試しました

どんな助けでも素晴らしいでしょう。前もって感謝します。

4

2 に答える 2

12

残念ながら、すぐに使えるモジュールについては知りません。ただし、カスタムコーディングを続ける場合は、次を参照してください。

  1. ビューの行ごとの編集および削除オプション

Views Megarowを使用します。実際の例として、コマース バックオフィスでの使用方法を見ることができます。カスタム モジュールでクイック編集フォームのフォーム構造 ( FORM api ) を記述する必要があることに注意してください。Views Megarow は、編集フォームへの ajax の入力、クライアント側での送信、およびサーバーからの応答後の元の行の更新を処理します。

  1. ユーザーが [編集] リンクをクリックすると、検針行が編集可能になり、ユーザーは同じテーブル内でインラインで変更できるようになります。

Views Megarow はインライン編集をサポートしていません。しかし、@ nmc によって提案された別のモジュールがそれを行います。そのeditablefields。ただし、編集/削除ボタンはありません。ビュー内のテキストを直接クリックします (ユーザーがフィールド データを編集するための適切な権限を持っている場合)。

editablefields を使用する場合は、ビューに別の削除ボタンを追加する必要があります。このボタンを確認すると、削除アクションをトリガーしたページにリダイレクトされます。

削除ボタンはデフォルトの確認ページにリダイレクトされるため、これをオーバーライドするカスタム削除アクションをコーディングすることができます。

  1. フッターには、新しい検針を追加するためのリンクが必要です。ユーザーがそれをクリックすると、新しい空白行がテーブルに動的に追加され、ユーザーが新しいエントリを作成できる必要があります。

小さな ajax フォームを作成することをお勧めします。その中に「Add Meter Reading」ボタンを作成します。これにより、送信時にサーバーに検針ノードが作成されます。ajax フォームには、非表示フィールド (Meter id など) に親情報が含まれている必要があります。このフォームの ajax 応答は、クライアント側でビューをロード/更新するための別のスクリプトである可能性があります。

ビューを更新するためのクライアント側コードは、Views Hacksの Views Autorefreshサブモジュールにあります。

ビュー megarow を使用している場合は、ビューが更新された後に ajax 応答に別の jquery 関数を追加する必要があります - トリガー編集ボタン。そうしないと、ビューで新しく作成された行にいくつかのクラスまたはテーマを追加して、それらをフォーカスする必要がある場合があります。

drupal の動作がテーブル内の新しく作成されたエントリに関連付けられるように、ビュー全体を更新することが重要です。

于 2013-02-04T07:54:59.117 に答える
3

すべてのニーズを満たす 1 つのモジュールがあるかどうかはわかりませんが、いくつかを組み合わせて使用​​できる場合があります。

Views Bulk Operations (VBO) - Drupal 7 をサポート

このモジュールは、表示された行に対して一括操作を実行できるようにすることで、ビューを拡張します。これは、各ノードの前にチェックボックスを表示し、適用可能な操作を含む選択ボックスを追加することで実現します。Drupal Core または Rules アクションを使用できます。

editablefields - 開発中の Drupal 7 バージョン

このモジュールを使用すると、ノード編集ページ (node/123/edit など) だけでなく、ノードのディスプレイ (node/123 など) で CCK フィールドを編集できます。ビューなどでも機能します。「フォーマッタ」を選択できる場所ならどこでも、編集可能 (またはクリックして編集) を選択できます。

editview - Drupal 7 のサポートはまだありませんが、コードを自分で変更できる場合に備えて言及すると思います

Editview は Views モジュールのプラグインです。ノードが編集可能なビューを作成し、新しいノードを作成できます。

于 2013-02-01T14:12:07.787 に答える