問題タブ [yii2-validation]

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

yii2 - Yii2 作成時にユーザー名を変更する

ユーザー名が既に使用されていることをアプリで検出して変更したい。実際、ユーザーが自分自身を登録するとき、彼は姓と名を入力し、ユーザー名は lastName.firstName です。ユーザー名が既に使用されていることを検出する方法と、それを変更する方法 (たとえば、番号を追加する) は?

ありがとう。

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

yii2 - Yii2: 同じモデルの複数のインスタンスでフォームを検証する方法

私のフォームでは、同じモデルの開始日と終了日を一度に更新します。簡略化された形式を参照してください。

終了日が開始日より後の場合、私が制御する必要があるモデルでは:

Yii2: Validation in form with two instances of same modelで説明されているように、同様にセレクターを変更しようとしましたが、成功しませんでした。検証 JS で「compareAttribute」を「mymodel-start」から「mymodel- 0 -start」に変更する必要があると思います。

だから、私は次のようなものを探します:

解決

ソリューションはlucasの回答に基づいています。

モデルでは、formName() メソッドをオーバーライドするため、すべての日付に一意のフォーム名があります (既存の日付の ID と新しい日付の乱数に基づいています)。

フォームは次のようになります。

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

php - フォームで _csrf トークンを送信していますが、まだ #400 を取得しています yii2 でデータ送信を確認できません

ajax ポストでも _csrf トークンをフォームで送信していますが、それでも #400 yii2 でのデータ送信を検証できません。この問題を回避するために次のコードを使用したくありません。

このコードを適用するとセキュリティが侵害されるため、これは恒久的な解決策ではありません。これが私の js コードです。

ここに私のコンソールヘッダーと応答があります

ヘッダー画像 ご覧のとおり、csrfトークンを送信しています

レスポンス画像 そして、私が応答して得るもの

この問題を解決する方法を知っている人がいれば、大きな助けになります

ありがとう

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

yii2 - クエリからテーブルへの検証を行う方法は? yii2

私の問題は次のとおりです。私はselect2を持っているフォームを持っていて、ユーザーがテーブルから入力されたドロップダウンリストから選択できるので、基本的に私がしたいことは、ユーザーがドライバーを選択しようとすると検証ルールがドライバーがその日にシステムを介して既に登録されているかどうかを確認します。

私はそれを行う方法について1つのアイデアを持っています.私はアーカイブテーブルに入る人々を登録する私のアーカイブフォームを持っています.それはドライバーテーブルに存在するかどうかをチェックします.存在しない場合は登録する必要があります.フォームに入力するために、このアーカイブ テーブルの各フィールドには、フィールドが入力された日付である datecreated 列があるため、基本的には彼が最後に入力した日付です。

この列を呼び出すルールを現在の日付と比較して、彼がすでにその日に入っていた場合にエラーを発生させるルールを作成するにはどうすればよいですか? ルールはドライバーモデルにある必要があります(私のコードは混乱しているため、明確にしています。Yii2は初めてです)

私の見解(アーカイブフォーム):

私のドライバーモデル:

私のアーカイブモデル:

ここに画像の説明を入力

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

yii2 - 生成されたフォームのデータを使用した動的フォーム操作? yii2

基本的。私は2つのことに問題があります:

  1. 私は動的フォームを使用しています。ユーザーは手元にあるすべての請求書を入力するために必要なだけ追加できます。フィールド (invoice_loadamount) があります。invoice_loadamount フィールドのすべてを合計したいです。したがって、ユーザーが 3 つのフォームを生成する場合、動的フォーム 1 (invoice_loadamount フィールド 1) + 動的フォーム 2 (invoice_loadamount フィールド 2) + 動的フォーム 3 (invoice_loadamount フィールド 3) を合計します。どうすればこれを作ることができますか? 彼が生成したすべてのフォームからこのフィールドを自動的に合計しますか?
  2. 私の 2 番目の問題は、テーブル (vehicles、列 vehicle_capacity) からデータを取得し、合計が vehicle_maxcap より大きいかどうかを検証し、そうであればエラーを出すような方法で比較したいということです。

ここに画像の説明を入力

ここに画像の説明を入力

私のフォーム:

私のアーカイブモデル:

私の車両モデル:

私の請求モデル:

私のコントローラー:

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

php - チェックボックスがチェックされている場合は Yii シナリオを設定します

チェックボックスがチェックされている場合、テキストフィールドに必要な検証を適用したいのですが、それ以外の場合はそうではありません。シナリオで試してみましたが、機能していません。