問題タブ [yii-cmodel]

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 に答える
6441 参照

php - CModel 対 CFormModel 対 CActiveRecord

yii で db 集約型アプリケーションを構築しています。したがって、パフォーマンスとセキュリティは当然のことです。それとは別に、フォームの検証も主要な基準です。セキュリティのために、すべての Sql クエリにパラメーター バインディングを使用する予定です。検証のために、独自の . CActiveRecord でパフォーマンスが低下することは承知しています。そこで、すべてのテーブルに対して Cmodel クラスを作成し、これらのそれぞれのモデルで検証ルールを定義し、データの取得と挿入のための SQL クエリを実行する関数も定義する予定です。Web サイトでのすべてのデータ収集は、主にフォーム (約 95%) を介して行われます。 Cformmodel を使用する必要があります。 Cmodel と Cformmodel の違いがよくわかりません。

また、XSS 攻撃を防ぐために HTML purify ラッパーをバリデーション ルールとして使用したいのですが、このラッパーのパフォーマンスが悪いとあちこちで読んだので、バリデーション ルールとして使用しても悪くなるでしょうか? また、入力を浄化しているにもかかわらず、Chtml::Encode を使用して出力テキストを表示する必要がありますか?

データを処理する私の大まかな計画は次のとおりです。

0 投票する
4 に答える
11446 参照

php - Yiiフレームワークでは、列を結合してドロップダウンリストの表示文字列として表示するにはどうすればよいですか

dropDownListビューに があり、テーブルから入力clientsされています。テーブルには、などfirst_nameの列が含まれています。表示テキストとして およびをドロップダウン リストの値として表示したいので、値として、および表示テキストですが、ここではこれらの列 (と)を結合して表示テキストとして使用したいと考えています。last_nameidfirst_namelast_nameididfirst_namefirst_namelast_name

モデルで

ビューで

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

php - トランザクションで複数のモデルを保存するための MVC パターンの通常の方法

トランザクションで 2 つのモデルを保存したいのですが、複数のビューで使用されます。

そのトランザクションをそれらのモデルの 1 つに入れる必要がありますか? または、何らかの方法でコントローラー アクションを再利用する必要がありますか?

この場合の MVC パターンのベスト プラクティスは何ですか?

注: 私のビューは複数のモデルで構成されています。

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

php - Yii: 厳格な MVC ルールに従って、すべてのビジネス ロジックが適切な場所にあることを確認します

Yii の MVC の基本に固執して、ビジネス ルールをモデル クラスに埋め込もうとしていますが、実装時に問題に直面しています。当面の問題は、ユーザーが重複したエントリを作成するのを止め、エントリがテーブルに既に存在するかどうかをチェックする関数をモデル クラスにコーディングすることです。同じモデルの基になるテーブルを照会するモデル クラスにメソッドを記述したいと考えています。新しいビジネス エンティティが存在する場合は、単純に false を返します。これをコントローラーでコーディングすると、目的の機能を実現できますが、これをモデルに保持して、モデルが使用されている場所でメソッドにアクセスし、シンコントローラーとシックモデルを指示する MVC の基本に固執できるようにしたいと考えています。前もって感謝します。

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

php - 静的モデルCModelの属性を設定

CActiveRecordに依存していた既存の機能コードを変更しています。現在、スキーマドライバがないsybaseに接続しているため、CActiveRecordではなくCModelを使用して書き換えています。私の問題は、この一般的なOOPの概念を理解していないことかもしれません。

オリジナル:MyModelController.php

参照は::model()機能しなくなりました...このメソッドは基本クラスがCActiveRecordの場合にのみ機能すると思います。

基本クラスがCActiveRecordであったときと同じ方法で、CModelに基づいているMyModelのシナリオ属性を設定するにはどうすればよいですか?

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

php - Yii 遅延読み込み テーブル/モデルを介して値を取得する

Yii では、スルー オプションを使用するリレーションを設定しています。

そして、私は次のようにアクセスします:

Users モデルの値にアクセスしたい場合、これはうまく機能します。しかし、EnvironmentUsers モデルの値にアクセスしようとすると、値が見つからないという通知がスローされます。

私の質問は、Yii で遅延読み込みを行うときに、スルー テーブルの値にアクセスするにはどうすればよいですか?

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

php - Gii で生成された CRUD に where close を追加する

私は Yii の初心者で、GII を使用して CURD テーブルを作成しました。すべて正常に動作していますが、データベースから特定のレコードを取得したいだけで、WHERE 句 (たとえば、「クライアントの性別が男性の場合」など) を挿入します。Gii の生成コードでデータベースからデータが取得された場所と、必要な場所が見つかりません。コードに WHERE 句を挿入します。

ご存知のように、Gii によって生成されたモデル、コントローラー、およびビュー ファイル。モデルファイルは以下の通りです。私のビューは CGridView を使用して CRUD テーブルを生成しました。

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

php - Yii 保存できないモデル インスタンスを作成します

Widgetテーブルとそれに付随する Yii Model クラスがあるとしましょう。

インスタンス化( )できるようにしたいのです$tempWidget = new Widgetが、どうにかしてデータベースに保存できないことを確認してください。ユーザーが物事をテストしたり、シミュレートしたりするためだけにモデルを使用したい...

明らかに、呼び出しを避けることもできます$tempWidget->save()が、コードの他の部分がそうしようとした場合に備えて、保存が保存されないようにする何らかのフラグが必要です。

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

php - Yii 結合されたテーブルですが、選択されたすべてのデータが取得されるわけではありません

コントローラーには次の基準があります。

次に、次のようにして、選択したすべてのデータを取得しようとしています。

しかし、結果には、2 番目と 3 番目のテーブルのデータがないことがわかります。最初のテーブルのデータは正常に取得されますが、他のテーブルのデータを表示できません。

誰が私が間違っているのか教えてもらえますか?

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

php - MVCORMおよびユーザー関連データ

Yiiは、通常の開発で問題ないORMベースの開発を提供します。私の質問は、私のアプリケーションには、ユーザー情報、ユーザー設定、ユーザー設定などの多くのユーザー関連データがあるということです。ここで、userとは、現在ログインしているユーザーを意味します。

ユーザーの背景画像の設定が必要な場合は、次のようにします

背景画像が必要な場所では、アプリケーションの別の場所で同じことを繰り返します。$ userのインスタンスを再度作成することを意味しますが、これは適切なアプローチではないと思います。それで、ユーザークラスを何度もインスタンス化する必要がない方法はありますか?セッションアプローチが好きではないことを忘れないでください。