問題タブ [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 投票する
0 に答える
72 参照

activerecord - サンプル テーブルの複数のモデル クラス

一部のモデル ファイルが非常に大きくなったため、機能を個別のモジュールに分割する必要があります。

同じテーブルに対して異なるモジュールで宣言された複数のモデル クラスを使用できるかどうかわかりません。

さまざまなモジュールでさまざまなクラスを使用してみましたが、どのモデル クラスを呼び出さなければならないかを注意することを除けば、うまくいくようですが、これが良い方法なのかどうか、または心配する必要がある複雑さがあるかどうかはわかりません.

この点に関して、ドキュメントは少しあいまいです

私の現在のモデルはで宣言されていますprotected/models/MyModel.php

これを分割したい

protected/modules/Moduel1/models/MyModel.phpprotected/modules/Moduel2/models/MyModel.php

編集: 詳細について質問を明確にしました。

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

php - yii の単一ビューで異なるデータベースの 2 つのモデルを更新する

フィールド (name,summary) 送信ボタンを含むビュー (_form.php) があります。送信ボタンをクリックすると、あるモデルの名前フィールドと別のモデルの概要フィールドが更新されます。このモデルは両方とも異なるデータベースのものです。誰でもこれを手伝ってもらえますか。
このIn _form.php(Test)に対して次のことを試しました

TestController.php

このコードは機能していません。さまざまなデータベースで機能させるにはどうすればよいですか。これについては、以下のリンクをたどりました。

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

php - yiiでモデルからコントローラーへのデータベースに列を追加します

Yii MVC では、

次を使用して、モデルのデータベースに列を追加しました。

$success = Yii::app()->ft_website_prod->createCommand()->addColumn('ft_website.users', 'columnname', 'varchar(64)');

コントローラーを使用してこれを実行する方法を知る必要があります。私は Yii を初めて使用するので、できるだけ多くのドキュメントを読みましたが、まだこれを理解できません。

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

php - Yiiでアップロードされた画像のファイルタイプとサイズを取得する方法

私は Yii に問題があります:

Slider.php というモデルと SliderController.php というコントローラーがあります。

ユーザーに画像をアップロードさせるために、次のコードを書きました。

そしてそれはうまくいきます。

私の質問は、ビュー内のファイルタイプとサイズを取得/返すにはどうすればよいですか?

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

php - Yii - モデルファイルのほとんどの関数は静的関数であると想定されていますか?

私は Yii フレームワークのユーザーです。

ほとんどの場合、以下のサンプル関数のように、関数をモデル ファイルで public static 関数として定義します。

私は間違っているのだろうか。

モデルファイルのほとんどの関数は静的関数であるはずですか?

私が間違っていることや理解していないことを教えてください。

ありがとう!!!

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

php - Yii パラメータとしてモデルを取得

2 つのモデルで動作するように 1 つのコントローラーを変更しようとしています。これは、コントローラーの loadModel 関数で行ったことです

ご覧のとおり、この関数のオプションのパラメーターを作成したいと思います。ここで、2 番目のパラメーターはモデルになります。これを達成するのを手伝ってもらえますか?

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

php - Yii: 複数のモデルを 1 つのフォームから保存し、既存のレコードをチェックする

以下は、私が持っている3つのテーブル間の関係です。

ここに画像の説明を入力

これで、user/create アクションによって新しいユーザーを作成するときに、フォームはユーザー テーブル フィールドとユニット名の両方の入力を受け取ります。ここでのユニット名はドロップダウンではなく (それを使用することはオプションではありません)、テキストフィールドです。フォームに入力されたユニット名がユニット テーブルに存在しない場合は、それをユニット テーブルに挿入し、関係/参照を user_unit テーブルに保存する必要があります。存在する場合は、user_unit テーブルを更新するだけです。User モデルで unitname プロパティを宣言し、それをフォームに関連付けて、コントローラーで入力されたユニット名がユニットテーブルに存在するかどうかを確認することで、それを機能させることができます。存在する場合は、UserUnit モデルを更新します。存在しない場合は、ユニットを作成してから UserUnit を更新します。レコードを更新するときにユニット名をフォームに関連付けることができないことを除いて、機能します。ユーザーユニットの関係は HAS_MANY であり、ここで問題が発生していると思います。誰かがそれを解決する方法を教えてもらえますか?

ユーザー/作成アクションは次のとおりです

ユーザー/更新アクション

そして loadModel 関数

ユーザーモデルの関係

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

yii - Yiiは、別の選択時にドロップダウンを作成します

別のドロップダウンの項目が選択されたときに入力したいドロップダウンがあります。両方のドロップダウンは、コントローラーから渡されたデータ/モデルに関連付けられています。最初のドロップダウンは、モデル内の関数を呼び出すことによって DB から取り込まれます。フォームはこちら

以下は、Ajax によって呼び出されるアクション user/getunits です。

最初のドロップダウンを選択すると、「未定義のインデックス: スーパーユニット」というエラーが表示され続けます。また、最初のドロップダウンに form->dropDownListRow を使用し、2 番目に CHtml::dropDownList を使用していることに気付くかもしれません。これは、ドロップダウンにajaxが正しく入力され、モデルに適切にバインドされることを正確に確認する方法の構文について、私が無知であるためです。