問題タブ [inplace-editing]
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.
jsf - Primefaces p:inplace: エンティティをマージするための EL 式をよりエレガントに伝播する方法
p:inplace を使用して値が編集されたエンティティを取得するための次の強力な「ハック」を共有したいと思います。
私の質問は、 p:inplace またはその他の既存の属性を使用して、これをよりエレガントに実現する方法についてです。
このトリックは、Stackoverflow での BalusC の提案を基にしています。
JSF (および PrimeFaces) ManagedBean のメソッドにパラメーターを渡す方法
問題は、ap:inplace で編集された #{emp.firstName} を持つ Employee オブジェクトを取得することです。
BalusC からの提案は次のとおりです。
#{emp} が var 属性によって公開されている繰り返しコンポーネント内に実際にいると仮定すると、次のように値変更リスナー内の EL スコープから取得できます。
これに関する問題は、EL 式 (この場合は #{emp}) がハードコーディングされているため、再利用できないことです。
現在、p:inplace の ID を使用して、リスナー内のエンティティの EL 式として解析できる文字列を正常に伝播していますが、ドット '.' を使用できないためです。ID 文字列では、すべての「.」を翻訳する必要があります。ハイフン「-」としてこれをリスナーの有効なEL式に変換します。このようにして、非常に複雑な EL 式を伝播し、データベースにマージするエンティティ (または必要な永続化操作) を知ることができます。
BooleanValue、FloatQuantity などの特定の浅い値をラップする深い Value エンティティのファミリがあり、それぞれに具体的に型指定された getValue() メソッドと汎用の一時的な getObject() メソッドがあり、ラップされた浅い値に関する他の永続的なメタデータを保持しています。 (ユニット、作者など)。
次の ValueManager バッキング Bean があります。
}
これは非常に再利用可能な戦略になりました。
たとえば、List getFloors() を持つエンティティ OfficeBuilding があり、各 BuildingFloor には深い FloatQuantity getArea() エンティティがあり、FloatQuantity は Value を拡張します。
dataTable では、value=#{officeBuilding.floors} に対して var=floor を反復処理し、領域の浅い .value を代わりに編集します。
これは、高度に再利用可能で便利な複合コンポーネント resources/util/inplaceValue.xhtml としてカプセル化できます。
上記の例を使用すると、これは次のように呼び出されます。
elid 属性を指定する際には注意が必要です。EL 式の "-" はハイフン "-" に変換されますが、さまざまな複雑なケースで魅力的に機能し、大量のコーディングを節約できます。それは非常にエレガントですが、それでもハックです。
Q: 値が編集されたエンティティーにアクセスするために必要な EL 式をリスナーに伝達するにはどうすればよいでしょうか?
また、特にこの目的のために、p:inplace の新しい属性についてPrimefaces 機能の提案を行いました。
ruby-on-rails-3 - Rails- モデル自体で定義された配列コレクションに best_in_place gem を使用したインプレース編集
best_in_place gem を使用したインプレース編集について説明しているRailsCasts#302を見ました。性別オプションについては、Ryan が show.html.erb 内の配列を使用してドロップダウン ボックスにします (彼が配列を明示的に定義している性別のセクションを参照してください)。
しかし、私が欲しいのは、次のようにモデル自体の内部で配列を定義したことです:(私の配列要素は単純ではなく、数が少ないため)
例:
user.rb
best_in_place
構文を使用して、この配列要素をドロップダウンとして使用するにはどうすればよいですか。
PS:私はこのようなことを試しました
しかし、未定義のメソッドauthencity_typesと書かれています
ruby-on-rails - Rails 3 best_in_place ネストされたモデルの編集
与えられた
インシデントの編集属性と、インシデント.ユーザーやインシデント.コンタクトなどの親の関連付けを編集する方法がわかりません
これは、たとえば次のように機能します。
しかし、incident.customer を実行して Customer.all のドロップダウンを取得する方法がわかりません (incident belongs_to :customer)
試すたびにさまざまなエラーが発生します。
winforms - インプレース エディタで XtraGrid を設定する際の問題 (GridLookUpEdit を使用)
列の値を入力するための GridLookupEdit を持つ XtraGrid コントロールが必要です。
私がこれまでにできたこと:
1) XtraGrid コントロールを構成しました
2) フォーム Load イベントで、データベースからデータをロードし、XtraGrid データソースと両方の repositoryItem(..) データソース、valuemember および displaymember を設定します。
a) データは XtraGrid にロードされます。セルをアクティブ化できますが、ドロップダウンから値を選択することはできません (repositoryItem(..) から)、または値を手動で入力することはできません (「*」新しい行でセルをアクティブ化できますが、同じ問題があります - できますドロップダウンから選択したり、値を手動で入力したりしないでください) => なぜですか?
b) XtraGrid のデータソースを設定しない場合、両方のドロップダウンがアクティブになり、GridLookupEdit を使用して値を選択できますが、セルを終了するとセルがクリアされます => この場合は xtraGrid.DataSource がないためだと思います設定されていますか?
私は何が欠けていますか?
winforms - Entity FrameworkにバインドされたXtraGrid - データをデータベースに戻す方法は?
1)IncludedProducts {ID} と Products {ID, Name, Code} の 2 つのテーブルがあります。
2) xtraGrid コントロールで、IncludedProducts テーブルに ID を持つ製品のリストを表示し、インプレース GridLookUpEdit エディターを使用して新しい製品を追加し、ユーザーが押した後にデータをデータベースにプッシュする (IncludedProducts テーブルへの変更を保存する) ことができるようにしたいボタン「保存」
例えば
製品表
含まれる製品テーブル
必要なアプリケーションで
1) 表示する XtraGrid コントロール
2) XtraGrid の各列に入力を開始すると、ドロップダウン グリッドが表示されます。ドロップダウン グリッドからアイテムを選択すると、BOTH(!) 列を埋める必要があります (これを実現するには、Name 列と Code 列の両方に ValueMember=ID を設定する必要があります)。
3) [保存] ボタンを押すと、IncludedProducts テーブルのデータが更新されます (ID 列のみが含まれます)。
わからない部分
XtraGrid コントロールで Code と Name の値を表示するには、ID、Name、Code (インプレース エディターの repositoryItem の DisplayMember 用) 列 (Products と IncludedProducts テーブルの結合) を含む DataSource を設定する必要があります。しかし、データをデータベースに保存したいときは、IncludedProducts テーブルに書き込む必要があります。これは ID 列のみを格納しています。
これどうやってするの?
PS DataSets ではなく、Entity Framework モデルを使用してこれを実現したいのですが、教えていただけますか?
これは私がこれまで取り組んできたことです(データベースからデータをロードするだけで、インプレースエディターを設定しますが、データをデータベースに送り返すことはできません) インプレースエディターでXtraGridを設定する際の問題(GridLookUpEditを使用)
resharper - Resharper Rename の使用方法
名前の変更は、私が使用する唯一のリファクタリング ツールですが、インプレース機能を動作させることができません。また、リファクタリングは、通常、プロジェクト、名前空間、ファイル、またはメソッドのみが必要なソリューション全体に常に適用されます。
では、選択可能なスコープで Resharper Rename をインプレースで動作させるにはどうすればよいでしょうか?
PS: インプレースの名前変更に現在のファイルがデフォルトとして含まれている場合は、それで問題ありません。