問題タブ [yii2-model]
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 - Yii2: ステータス「有効」および「無効」ヘルパー関数 - 動的使用
2 つの機能を組み合わせて、コードを統合し、使用方法に応じて動的にしたいと考えています。これが可能かどうかはわかりません。
まず、基本的な使い方を整理しましょう。私の例では、Post および PostCategory モデル (および CRUD ビルド) があります。カテゴリを作成し、新しい投稿を作成してカテゴリに割り当てます。enabled
投稿には、またはになる能力がありますdisabled
。基本的に、いくつかの新しい投稿を作成し、準備ができるまでエンド ユーザーに表示されないようにすることができます。enabled
1 つのユースケースはドリップ フィード システムで、100 件の投稿を追加し、x 日ごとに 1 つの切り替えを行うことができます。それはこの範囲を超えています。
views\post\_form.php
と のドロップダウン リストと、それらが呼び出す関数に注意してcategory_id
くださいstatus
。
\common\models\Post.php
これで問題なく動作します:)しかし、「ゲッター」との関係と同様にアクセスされないためget
、 as inを使用するのは好きではありません。getPostStatusConst()
$model->postStatusConst
ただし、これらを「ゲッター」としても使用したいと思います。インデックスとビューでは、同じ関数も呼び出すとよいでしょう。配列を返す代わりに、「Enabled」や「Disabled」などの「ナイスネーム」を返す
これ以上混乱させたくないので、関数の名前を変更しません。
ビュー\投稿\view.php
Noticeはcreate アクションpostStatusConst
で使用したのと同じ関数です。_form
_form では、ドロップダウン リストの配列を返す必要がありました。Enabled
私たちの見解では、またはなどの適切な名前を返す必要があるだけですDisabled
。
私は試した
Post モデルでこの関数を試しました:
それは明らかにうまくいきませんでした:)私は$this
クラス内で自分自身を参照していることを知っているので、うまくいくとは思っていませんでした。それは私が何をしようとしているのかを示しているだけです。
リレーションでは、hasOne()
それを直接呼び出し (Post::getCategory) として使用しているのか、インライン ($model->category->name) として使用しているのかを知っているようです。
質問
同じことをすることは可能getPostStatusConst()
ですか?as を使用し$model->postStatusConst
て表示する、Enabled
または適切に表示するDisabled
、または asPost::getPostStatusConst()
をドロップダウンの配列を取得するために使用します。
php - Yii2 Customized Row's total in footer Kartik v (フッターに行の値の合計を表示)
フッターに行の値の合計を表示したい。
いくつかの方法を試しましたが、適切な結果が表示されません。
どんな助けも非常に高く評価されます。
私はカルティックグリッドを使用しています。
私はこれを試しましたYii2: Kartik Gridview sum of a column in footer
私の場合はうまくいきません。
これまでのところ、フッターに合計を印刷することができました
私は私のコントローラーです
そして、すべてのフッター'footer'=>$total_ltrs
'footer'=>$total_rate
にそれぞれ渡されます。'footer'=>$total_amt
From Date と TO Date を検索すると、フィルターごとに結果がグリッドに表示されます。
ただし、フッターの合計の結果は変更されません。グリッドにある行だけをいくつか実行したいと思います。
誰でもこれについて私を助けることができますか??
yii2 - アプリケーションをライブサーバーに移動するときに Yii2 クラスが見つかりません
私のアプリケーションはローカルで完全に動作しますが、ライブ サーバーにアップロードする際にいくつかの問題があります。
最初の 1 つは、アプリケーションの特定のページで次のエラーが発生するが、同じクラスの他のユーザーでは発生しないことです。
ビュー ファイルの先頭に以下の行があるにもかかわらず、上記のエラーが見つかりました。
もう 1 つの問題は、Seo モデルを使用して Seo テーブル内のレコードを検索しようとしたときに発生しますが、このエラーはアプリケーションの一部でのみ発生し、同じテーブル/モデルを使用する他の部分では発生しません。以下は私が得るエラーです:
次の行を使用すると(テーブル関係が機能し、必要なデータがそれらのものであることを確認できます)
yii2 - 2 つの外部キーを使用してフィールドを取得する Yii2 リレーション
2 つの外部キーを使用してテーブルからフィールドを取得する際に問題があります。
以下の使用表の関係を説明しました。
- ユーザー テーブルhasMany Companies(company_id)。
- Company テーブルには company_id があります。
- 施設hasOne Company_id (ユーザー インスタンスに基づく)。
- エリアには多数の施設 ( facility_id ) があります。
ログオンしているユーザーには、company_id に関連する facility_id に関連する領域があります。
私は今持っています
- 製品ラインには多数の製品 (product_id)があります。
ユーザーは、地域に関連する製品を表示する必要があります。
- 製品ラインには多数のエリア (area_id) があります。
- 製品ラインには internal_code というフィールドがあります。
製品モデルは、products_id に基づいて製品ラインと関連付けられています。
この内部コードを、特定の地域に属する product_id に基づいて表示したいと考えています。
今のところ動作していない私のコード:
私の製品モデルでは。
私のビューファイルでは:
これらの関係をリンクする方法がわかりません。助けを求めています。ありがとう
テーブルのリスト:
- ユーザー (primaryKey - users_id、foreign_key - comapny_id)
- Company(primaryKey - company_id)
- Facility(primaryKey - 施設 ID、foreignKey - company_id)
- Areas(primaryKey - area_id,foreignKey-facility_id)
- Productlines(primaryKey - productlines_id、foreignKey - product_id および area_id)
- 製品 (primaryKey - product_id)。
私の期待される結果:
上の表では、area_id 47 に 2 つの product_id (1 と 3) があることがわかります。それらの内部コードは異なります。両方の内部コードを返すようにしたいのですが、今のところ内部コードは 1 つしか取得できません。
yii2 - yii2 では、リレーションを介してどのように呼び出すのですか
たとえば、A、B、C、D、E、F テーブルがあります。
A は B の外部キーとして a_id を持ちます。B は外部キーとして a_id と c_id を持ちます。C には外部キーとして d_id があります。D は外部キーとして e_id を持っています。
では、A から D への関係をどのように記述すればよいでしょうか。A は D と直接関係がないためです。
A から CI までの関係を以下のように書きます。
A から D への関係をどのように取得しますか?? オンラインのどこにも構文が見つかりません..ありがとう..
yii2 - データベースへのyii2データはそれらをすべてnullに保存します
こんにちは、データベースにフォーム データを送信すると問題が発生します。すべての NULL フィールドが保存されます。助言がありますか? 私のコントローラー
私のモデルフィールド機能のルールと変数を追加しました。
forms - Uncaught RangeError: 最大呼び出しスタック サイズを超えた Yii2 ポップアップ フォーム
Yii2 のポップアップフォームに問題があります。「アップデート」がうまくいきません。フォームは表示されますが、検査ツールには次のように表示されます。
Uncaught RangeError: 最大呼び出しスタック サイズを超えました。
作成のアクションは同じコードを使用し、完全に機能します。私は何が起こっているのか分からない。
php - テーブルに複数行のデータを追加するたびに、「不明なプロパティを取得しています」というエラーが表示されます
私はyii2にとても慣れていません。タスク、アクティビティ、従業員の 3 つのテーブルがあります。Activity テーブルに複数のデータ行を追加するたびに、次のエラーが発生します -
"不明なプロパティを取得しています: backend\models\Employee::Employee_ID"
私の Activty モデルには、次の 2 つの get 関係関数があります。
私の _columns.php では、以下を使用してグリッドビューで従業員名を取得しています。しかし、これにコメントしても、Activity テーブルに複数の行があるとエラーが発生します。
なぜこれが起こっているのか、どうすれば修正できるのかを理解するのを手伝ってもらえますか?
ありがとうございました
編集:
コントローラーを追加しました
`
`
以下の index.php
`
`
以下のview.php
`
テーブルスキーマは以下のとおりです
活動表
従業員テーブル