問題タブ [before-save]

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 投票する
4 に答える
7390 参照

php - Yii 更新時に、特定の AR プロパティが beforeSave() で変更されたかどうかを検出します

モデルの beforeSave で Yii イベントを発生させています。これは、モデルの特定のプロパティが変更された場合にのみ発生します。

現時点でこれを行う唯一の方法は、新しい AR オブジェクトを作成し、現在の PK を使用して古いモデルの DB をクエリすることですが、これはあまり最適化されていません。

これが私が今持っているものです(私のテーブルにはPKがないことに注意してください。そのため、比較している属性以外のすべての属性でクエリを実行します-したがって、unset関数です):

より良いアプローチはありますか?古いプロパティを の新しいローカル プロパティに格納することはできafterFind()ますか?

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

validation - 検証中に CakePHP データが変更され、beforeSave が変更で保存されない

フォームから送信されたデータを保存しています。

コントローラーで私がやっている:

$this->request->data は次のようになります。

'role' と 'parent_id' で機能する検証ルールがあり、ロール/親 ID がユーザーがアクセスできる ID の中に含まれていることを確認します。

データが有効な場合、検証によってフィールド値が変更されます。

ビヘイビアーの beforeSave() フィルターでいくつかのツリー フィールドを設定する Tree ビヘイビアーもあります。

$this->data->[$model][$field]検証ルールは、以下に示すように変更を書き込みます。

動作の beforeFilter() は、次のようなステートメントでデータ配列を変更しています。

検証と beforeFilter() 処理が完了すると、$this->User->data次のような美しく正しいデータ配列が得られます。

ただし、$this->request->data変わらない。そして、それが救われていることです。

明らかに、データにアクセスするためのこれらのさまざまな方法の関係を理解し​​ていません。3 つのコンテキストでデータに対処するために、さまざまな方法を試しました。

  • コントローラ
  • モデル
  • 行動

$this->User->create($this->request->data);そして、Controller save() ステートメントの前に試しました。

コントローラーでは、利用可能なデータ配列として私が見ているもの:

  • 保存する前に
  • $this->request->data = $this->data = フォームからの適切なデータ
  • $this->User->data = いくつかのデフォルトの未入力の配列

  • $this->User->create($this->request->data) を使用する場合の保存前

  • 3 つの配列すべてに生のフォーム データが含まれています

  • いずれの場合も保存後

  • $this->request->data = $this->data = 前とまったく同じ
  • $this->User->data = 適切にマッサージされたデータ

誰か私を整理できますか?

ドン・ドレイク

0 投票する
0 に答える
231 参照

ruby-on-rails-3 - レールの1対多の関係で「serialize」または「accepts_nested_attributes_for」を使用しているときに、Update_attributes操作が完了しませんでした

コントローラーの更新方法

モデル

請求書.rb

請求明細書.rb

データを更新しようとすると問題が発生します。更新日に、デバッガーでチェックしている間にすべての更新された値を取得しますが、データベースには保存されません。その理由の 1 つは、create では正常に呼び出されたが update 操作では呼び出されなかった「add_taxes」メソッドであることがわかりました。また、「税金」変数がシリアル化され、accepted_nested_attributes _for を使用したことも覚えておいてください。

誰でも私を助けてください。

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

excel - Beforesave イベントでのセルの選択

以下のコードを参照してください。Workbook モジュールに「beforesave」コードがあり、アクティブ シートにいるときに正常に動作します。ただし、シート 2 で使用するテーブルから、シート 1 にもピボット テーブルがあります。ピボットを更新するには、マクロが添付された挿入ボタンを使用します (これはモジュール セクションにあります)。

Activate.Workbook.Save で、他のコード (workbook モジュールにある) に作用し始めます。データが欠落しているピボット テーブルは適切なツールではないため、これを実現したいと考えています。ただし、これを使用すると、デフォルトでエラーが発生し、セルが強調表示されます.Offset(0, 1).Select - どうすればこれを防ぐことができますか?

理想的には、ユーザーが msgbox で [OK] を選択すると、画面ページがシート 2 に変わり、問題のあるセルが強調表示されます。

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

wordpress - ポスト保存前にWordpressフックがデータベースに書き込む

ワードプレス初心者なのですが、どなたか教えていただきたいです。いくつかのフックが必要です。これは、いくつかの文字数 (300 としましょう) の後に投稿を分割し、各分割の後にテキストを追加します。フィルターフックを作成しましたが、アクションフックの作成方法がわかりません-分割されたテキストを書き込むには保存、公開、または編集アクションの前に、データベースへのテキスト。このコードは機能しますが、データベースに保存するにはどうすればよいですか?

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

mysql - Yii 他のモデルで beforeSave() を呼び出して保存する

forum_post と gallery という 2 つのテーブルを作成しました。

forum_post テーブル:

id user_id ststus photo_id

1 1 こんにちは...!NULL
2 1 こんにちは!NULL
3 1 NULL 1

4 1 ヌル 2

user_gallery テーブル:

id user_id 画像 動画

1 1 1.jpg ヌル

2 1 new.gif ヌル

ユーザーが user_gallery テーブルに画像ファイルをアップロードするときに、forum_post テーブルに 1 つの行を作成し、ギャラリー ID を forum_post-> image フィールドに格納します。ユーザー ID だけでなく、forum_post テーブルにも格納されます。

ForumPost の私のモデル コードは次のとおりです。

UserGallery beforeSave 関数は次のとおりです。

私のテーブルの関係は、user_gallery->image は forum_post->photo_id を参照しています。

現在、画像はuser_galleryフォルダーに保存されており、ForumPostモデルでIDを取得できません...誰か助けてください.. :(