問題タブ [dry]
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.
php - PHP と JavaScript の間で定数を共有する
開発中の PHP アプリケーションにはいくつかの定数があります。Constants クラスを定義し、定数を const VAR_NAME = value; として定義しました。このクラスで。これらの定数を JavaScript と PHP コードの間で共有したいと考えています。それらを共有するための DRY (Don't Repeat Yourself) メカニズムはありますか?
unit-testing - 本番環境とテスト コードの間の DRY 定数
私は通常、重複を避け、DRY 原則を遵守しようとします。ただし、次のようなケースについては疑問に思っています。
ラベルが "blah" であることが要件であり、誰かが FEATURE_LABEL を "bleh" に変更した場合、要件を満たしていなくてもテストはパスします。これは DRY に違反する有効な場所ですか?
sql - 月をピボットする SQL ステートメントに DRY 原則を適用する方法
他の人がこの状況をどのように処理するのか...そして、この状況にDon't Repeat Yourself (DRY)の原則を適用する方法を考えています.
月を列として表示するために、T-SQL で常に PIVOT または CASE ステートメントを作成していることに気づきました。通常、(1) 日付フィールドと (2) 値フィールドを含むいくつかのフィールドがあります。ASPX ページまたは Reporting Services を介してこれをユーザーに提示する場合、このパターンを作成するには、最後の右端の 14 列が必要です。
[年],[1月],[2月],[3月],[4月],[5月],[6月],[7月],[8月],[9月],[10月],[11月],[12月] ]、[合計]
year は int としての年であり、他のすべてのフィールドはその月の合計値フィールドです (その年の合計値フィールドである [Total] を除く)。
これを処理するための再利用可能な方法を見つけたいと思います。すべての提案を受け入れる (T-SQL / ANSI SQL)
ruby-on-rails - Rails アプリの CRUD 部分を DRY する方法は?
私が作成しているアプリは、多くのアプリと同様に、90% が通常の CRUD で、10% が "ジュース" であり、厄介なビジネス ロジックと、より多くの柔軟性とカスタマイズが必要です。
この 90% に関しては、できるだけ DRY の原則に固執しようとしていました。コントローラーが機能している限り、resource_controller が実際に機能することがわかり、その領域のすべてのコントローラーを削除して、それらを汎用コントローラーに置き換えることができました。
今、私はビューで同じことを得る方法を知りたいです。このアプリには、全体的な application.html.erb レイアウトがあり、すべての CRUD ビューに共通の別のレイアウト レイヤーと、最後に「コア」部分が必要です。
index.html.erb では、指定したフィールドとラベルを使用して単純なテーブルを生成する必要があります。
新規および編集用、ラベルとフィールドを示す一般的なフォームの編集 (必要に応じてカスタム フィールドを提供する可能性あり)。
show が必要かどうかはわかりませんが、必要な場合は new と edit と同じです。
それを行うのに役立つプラグインとツール (または記事や一般的なポインター) は何ですか?
ありがとう、フェリペ。
django - django テンプレートで「ブロック」を繰り返す方法
同じ django テンプレートで同じ{% block %}を 2 回使用したいと考えています。このブロックをベース テンプレートに複数回表示したい:
そしてそれを拡張します:
Django がブロックを 1 回だけ表示することを望んでいるため、例外が発生します。
/ での TemplateSyntaxError
「タイトル」という名前の「ブロック」タグが複数回表示されます
手っ取り早い解決策は、ブロックタイトルをtitle1とtitle2に複製することです。
しかし、これはDRYの原則に違反しています。継承するテンプレートがたくさんあり、地獄に行きたくないので、非常に難しいでしょう;-)
この問題に対するトリックまたは回避策はありますか? すべてのコードを複製せずに、テンプレートで同じブロックを繰り返すにはどうすればよいですか?
django - Django 関連のオブジェクト セットの共通インターフェイスを実装するにはどうすればよいですか?
契約は次のとおりです。
私は 2 つの db モデルを取得ShoppingCart
しOrder
ました。DRY 原則に従って、いくつかの一般的な小道具/メソッドを共有インターフェイスに抽出したいと思いますItemContainer
。
_flush()
主に関連するオブジェクト セットの削除を実行するメソッドに出会うまで、すべてがうまくいきました。
問題は、それが何であるかを動的に知るにはどうすればよいかということorderitem_set
ですshoppingcartitem_set
。
stored-procedures - sql sp 年または年と月
年と月がかかる SP があります。
そしてそれをクエリする:
それから私は同じことを年だけ持っています
そしてそれを次のようにクエリします:
もちろん、ロジックは sum(col) よりも複雑です。
私の質問は、1 年全体を意味する場合に対象月に 0 を渡すことを意味する場合でも、ロジックが 2 つの SP 間で繰り返されないように、この SP をどのように記述することができるかということです。
dry - xy座標を使用したコードでDRYをどのように追跡しますか?
選択した言語で、このサンプルで夢見た DRY の理想をどのように実現しますか。
注: 多数のアドホック プリプロセッサ マクロは、読み取りと書き込みが極端に少なくなる可能性が高いため、これは除外します。
c# - ロジックにC#とJavascriptの実装が必要な場合にDRYを維持するにはどうすればよいですか?
現在、ASP.NT MVC RC1を使用して、基本的なタイムシートアプリケーションを実装しています。DRYの原則に従いたいのですが、ある特定のケースでは難しいと感じています。
私のビューの1つ、実際には部分ビューには、特定のタスクに費やされた時間数を表す多数のテキストボックスがあり、曜日ごとに1つのテキストボックスがあります。最初にページをロードするときに、ビュー内のテキストボックスにそれらすべての時間の合計を表示する必要があります。さらに、テキストボックスの値を変更するときに、その合計を更新したいと思います。テキストボックスを更新しても完全なポストバックは発生せず、結果に対して何も行わないAJAXポストバックのみが発生します(ポストバックはDBの値を更新しますが、アクション結果はEmptyResultであるため、更新する必要はありません。 UI)。
現在、コントローラーにそのビューの「合計」が入力されたビューを作成させているため、すべての値を追加するロジックはC#コントローラーにあります。UI側では、UIレベルで合計を更新するJavaScriptがあります。しかし、これは良くありません。なぜなら、その合計の計算方法の背後にあるロジックを変更すると、2か所で変更する必要があるからです。AHH!乾かないで!
だから、どうすればこれを行うことができますか?これまでのところ、私が思いついた唯一の答えは、UIで合計を計算するjavascriptコードを破棄し、代わりにAJAXポストバックにそのビューの新しい「合計」を返すようにすることです。
他のアプローチはありますか?