問題タブ [partials]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
3448 参照

javascript - AJAX、Rails、およびフォームの動的読み込み

私は Rails アプリを持っていて、少し勢いを増していますが、対処しなければならない深刻な頭痛の種があります。これは基本的な種類のアセット マネージャー アプリケーションです。ユーザーは写真、.pdf、ビデオなどをアップロードし、システムによってそのアセットの表示方法を管理できます。

index.html.erb については、かなり標準的な Rails ビュー (Rails によって生成されるもの) から始めました。各アセットのサムネイルをレンダリングするパーシャルと、次のようなものがあります。

私が望むのは、サムネイルをクリックできるようにすることです(簡単です)が、ユーザーがそのボタンを押すと、divの内容は基本的にはedit.html.erbで埋められますが、必要だと思いますパーシャルとして行われます。私はすでにこれをまっすぐなjavascriptで管理しています。

私は新しい「Agile Development on Rails」本の出版前バージョンにアクセスできます。これは出版社から誰でも入手できますが、AJAX に関する章は非常に最小限であり、これらのことについて私よりも多くの経験があることを前提としています。 JavaScript と Rails への私の最初の進出。

更新:「質問は何ですか」「答え」に応えて、かなり明確だと思いましたが:

サムネイルをクリックして編集フォームを div にロードするには、サムネイルのパーシャルに何を入れる必要がありますか?

0 投票する
2 に答える
353 参照

ruby-on-rails - レンダリングするためのいくつかの呼び出しにわたって情報を追跡する方法:partial

私はattribute_fuを使用して、特定のテーブルの行の適切なブロックをレンダリングしています。

barパーシャルに少し状態の概念を持たせたいと思います。(この概念はビューに固有であるため、これをモデル自体に外部化してコントローラーで計算したくありません。)簡単にするために、リスト内のBarのインデックスであると仮定します。 bar@foo.bars

(この場合、:collection => @ foo.barsを使用してbar_counterを有効にできることを認識しています...これは私のテストでは機能していないようですが、ドキュメントを確認しました。)

私の質問-状態を保持および編集できるように、変数をパーシャルに渡すにはどうすればよいですか?素朴に、私は次のようなことをすると思いました

動作します。 tmpは適切に渡されますが、[]を呼び出すと、「ああ、nilでメソッドを呼び出しただけです」とスローされます。驚いたことに、私はtmp.inspect、tmp.classなどを実行してハッシュを調べることができ、これらは私が期待する結果をもたらします。しかし、tmp [:index]またはtmp [:anything_I_want]はそれを爆破させます。

tmp配列を作成しても同様の結果が得られました。

何か案は?

0 投票する
2 に答える
4238 参照

ruby-on-rails - Ruby on Rails - コレクションを使用して部分的にループする際の問題

Rails で作成しているフォーム内のパーシャルに対して :collection コマンドを使用すると問題が発生します。理想的には :collection コマンドを使用したいので、.rjs テンプレートでこのセクションを簡単に操作できます (チェック ボックスが変更されるとフォームが送信され、フォームが再読み込みされます。これは to-do リストです)。

このコードは機能します:

部分的に:

このコードは機能しませんが、次の形式を使用したいと思います。

非動作部分で:

エラーが発生します:

object[] という名前ですが、object param と @object var が存在しないか、to_param: nil に応答しません。この行を参照しています: <li><%= f.check_box :completed %>. なぜこれがうまくいかないのか、さまざまなバリエーションを試してみましたが、うまくいきません。フォームが原因でこれを実行できませんか? form_for コードは、1 つのモデルから複数のオブジェクトをフォームにリストするための Rails Way book から直接引用したものです。

これに関するヘルプは大歓迎です。

0 投票する
6 に答える
6729 参照

ruby-on-rails - パーシャルの代わりにヘルパーを使用する場合

Rails アプリケーションで、どの状況でパーシャルを使用し、いつヘルパーを使用しますか? どちらもマークアップの断片を表しているため、非常によく似ています。

これに関する規約はありますか?それらを使用する「レールの方法」はどれですか?

ありがとう!

0 投票する
2 に答える
296 参照

ruby-on-rails - 複数のビューで同じパーシャルが呼び出されたビューに戻る

現在、2 つの異なるビューでパーシャルを再利用しています。

ビューA

ビューB

パーシャルはモデル A に属していますが、モデル B と関連付けられているため、モデル B にも適用できます。

フォームが含まれており、データが送信されると、常にユーザーをビュー A にリダイレクトします。ただし、ビュー B からフォームを送信すると、フォーム A ではなくビュー B にリダイレクトされたいと思います。

今すぐビュー A にリダイレクトする理由は、それがこのフォームが属するモデルだからです。したがって、投稿されると、コントローラ A と通信し、リダイレクトを使用してユーザーを a_url に移動します。

ユーザーを元の場所にリダイレクトするようにフォーム (またはコントローラー アクション) に指示するにはどうすればよいですか?

ありがとう!

0 投票する
6 に答える
2708 参照

asp.net-mvc - 厳密に型指定された部分ビュー MVC RC1

ViewData.Model を部分ビューに渡す際に問題が発生しました。結果クエリと同一視しても、常にデフォルトで null になります。モデルが null であるため、厳密に型指定されたデータにアクセスできません。私の現在のコードはこれです、

ビューページ

UserControl - ヘッダー

ユーザーコントロール - テスト

コントローラ

0 投票する
3 に答える
190 参照

ruby-on-rails - VB .NET に Rails パーシャルに類似するものはありますか?

私は VB .NET を初めて使用します。可能であれば、Rails パーシャル (ページのスクリプトで、おそらくループ内で参照できる HTML テンプレートのビット) のようなものが欲しいです。そんなものはないかもしれないと分かっています。

0 投票する
5 に答える
5816 参照

ruby-on-rails - Railsフォーム要素だけをパーシャルに入れることは可能ですか?

私のアプリには、ユーザーが「会場」を選択するための選択ボックスがあります。この選択ボックスは、ご想像のとおり、フォームになっています。ページのどこかに、AJAX を介して新しい会場を作成するアクションもあります。新しい会場が作成されたら、これを反映するように会場選択ボックスを更新したいと思います。

私の解決策は、選択ボックスをパーシャルに配置し、コントローラーの作成アクションからパーシャルをレンダリングすることでした。

パーシャルは次のようになります。

ここで、f はフォーム参照です。

問題は、パーシャルで f が定義されていないため、エラーが発生することです。1 つの解決策は、フォーム全体を含めることですが、フォーム全体を更新するわけではないので、その必要はないと思います。これをどうやって進めるかについてのアイデアはありますか?

0 投票する
11 に答える
7182 参照

php - Rails のパーシャルとテンプレートに相当する CodeIgniter または PHP

CodeIgniter、またはコア PHP; Rails のビュー パーシャルとテンプレートに相当するものはありますか?

パーシャルを使用すると、ビュー内に別のビュー フラグメントをレンダリングできます。navbar.php自分のビューの内側を指し示すことができる共通のビューを持つことができましたhomepage.php。テンプレートは、HTML ページの全体的なシェルを 1 か所で定義し、各ビューで本文を埋めるだけです。

CodeIgniter のドキュメントで見つけた最も近いものはLoading multiple viewsで、複数のビューがコントローラーで順番にレンダリングされます。コントローラー内でページの視覚的な外観を決定するのは奇妙に思えます。(つまり、ナビゲーション バーを移動するには、デザイナーがコントローラーを編集する必要があります)。

これを達成するための PHP の方法について、スタックオーバーフローを検索してきました。ob_startを使用したパーシャルのシミュレートについて説明しているこのページを見つけました。それは CodeIgniter 内で推奨されるアプローチですか?