問題タブ [codeigniter-datamapper]

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

php - CodeigniterのDataMapper:モデルオブジェクトを一度だけインスタンス化して再利用することは可能ですか?

ここでスパムや宣伝をしようとはしていません。私はこのコミュニティと、質問に答える時間を喜んで諦めている人々(私のように)を大切にしています。私はWolfAuthと呼ばれるCodeigniterの認証ライブラリを構築しました。現在、追って通知があるまで、すべてのデータベースの相互作用をDataMapperに依存しています。

各関数は現在、次の行に沿ってコードを使用しています。

PHPがオブジェクトのインスタンス化をどのように処理するかは完全にはわかりませんが、50の関数でこれを実行すると、パフォーマンスが向上せず、そうでない場合は、不要なオブジェクトのインスタンス化が追加されます。使用している各DataMapperモデルオブジェクトのグローバルインスタンス化を行い、各関数で再利用することは可能ですか?

だから次のようなもの。

私はここで非常にうるさいのですか、それとも私が求めていることは可能であり、おそらく私が構築したような大きなライブラリのために物事を行うためのより良い方法ですか?

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

php - codeigniterとdatamapperを使用した高度な関係の問題

私にはcustomer、order、userの3つのテーブルがあります。userはログインテーブルで、customerはアドレス情報などを保持しています。

私の問題は、ユーザーテーブルのIDが主なものであることにあります-それは(user_idとして)顧客に関連し、次に顧客は注文に関連します

私がやりたいのは、注文テーブルに注文と顧客の両方でcustomer_idに基づく関係を持たせることです

私はこれを試しました-

ただし、次のクエリが生成されるため、機能しません。これは、customer.user_idではなくcustomer.idを参照します。

うまくいけば、これは私がやろうとしていることを説明しています

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

php - Datamapper/Codeigniter でトランザクションをコミットした後、トランザクションをロールバックできますか?

コミット後にトランザクションをロールバックすることはできますか? Datamapper のドキュメントにtrans_begin()メソッドが表示されているため、これを尋ねますが、メソッドが見つかりませんでしたtrans_end()。Codeigniter にはtrans_complete()メソッドがあるので、Datamapper にも同様のメソッドがあるのではないかと推測しました。

私が興味深いと思ったのは、この答えです。Datamapper/Codeigniter にセーブポイントに似たものはありますか?

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

php - 実行時の CodeIgniter データベース接続

実行時にデータベースに手動で接続することにまだ問題があります。まだ答えが見つからないため、新しい質問を開きます。

これがケースです。

フォームで入力されたユーザー名とパスワードを検証するために、接続ユーザーでデータベースに接続します。次に、この新しい情報を使用して、ユーザーが有効な場合は、この新しいユーザー名とパスワードを使用してデータベースに接続する必要があります。Look には次のものが含まれます。

config/database.php

次に、ログインコントローラーで: controllers/login.php

このコントローラー内ではすべて問題ありませんが、リダイレクトが実行されると (さまざまなモデルが読み込まれます)、たとえば tareas_model.php のように、最初の行で同じエラーが発生し続けます。

モデル/tareas_model.php

エラーは次のとおりです。

また、$this->db をセッション変数として設定しようとしましたが、同じエラーが発生し続け、かなりおかしくなりました。オンラインで見つけたものはすべて試しましたが、うまくいきませんでした。

何か助けはありますか?

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

php - Codeigniter Datamapper 関係による順序付け

こんにちは、

Codeigniter 用の Datamapper Overzealous Edition を使用して、フットボール リーグの Web サイトを構築しています。すべてのフィクスチャは、次の形式でデータベース テーブルに保存されます。

ご想像のとおり、私の競技テーブルは次の形式になっています。

データベースから備品を取得するとき、関連する競技名で並べたいので、たとえば、次のように使用します。

残念ながら、order_by 関数はこの形式の構文をサポートしていないようです。これを達成するためのクリーンな方法を思い付くことができますか? 私が考えることができるのは、すべてのフィクスチャを手動で配列に配置し、そのように順序付けることだけですが、それは冗長なコードのように思えます!

よろしくお願いします。

ダン

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

php - Codeigniter/Datamapper "where_related" によりクエリが多すぎます

と の間に多対多のマッピングがprofilesありcategoriesます。このクエリ:

そのプロファイル テーブルに約 1000 のエントリがあり、実行に約 30 秒かかります。カテゴリ テーブルと profile_categories テーブルもあります。実行ごとに驚異的な 4000 のクエリが発生します。

これをより速くするにはどうすればよいですか?

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

php - HMVC による Codeigniter のルーティング

Codeigniter を Datamapper および HMVC と組み合わせて使用​​しています。フォルダ構造を参照してください:

今、私は自分の管理コントローラーを呼び出したいのですが、このコントローラー内の関数はインデックスだけでは見つかりません。私のモジュール コントローラは正しくルーティングされています。提案?

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

php - Codeigniter HMVC モジュール構造

Datamapper と HMVC 拡張機能を使用して、Codeigniter のコンテンツ管理システムに取り組んでいます。私の質問は、サブモジュールを処理する方法です。

例: ユーザー、ユーザーグループ、権限、およびモジュールから存在するユーザー モジュールを作成したいと考えています。codeigniter では、次のようにビルドしました。

これはそれを修正する正しい方法ですか、それとも間違っていますか?

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

codeigniter - DataMapperとCodeigniterでパスワードカスタムルールを暗号化する

私はDataMapperORM1.6.0でCodeigniter2.0.3を使用しています。CIへの統合DataMapperは正常に実装されており、パスワードの暗号化を除いてすべて正常に機能しています。

users.phpクラスで呼び出されたモデルがありUsersます。また、検証ルールを設定しました。

検証ルールの暗号化機能:

MySQLusersテーブル構造:

コントローラを介して新しいユーザーを作成するだけです。


編集1:

users.phpモデルの完全なコードはこちら


ユーザーはデータベースに正常に保存されましたが、元のパスワードは暗号化されていません。

私は何が間違っているのですか?

ありがとう、マリオよろしく

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

php - DataMapper を CodeIgniter で動作させることができません

CodeIgniter アプリケーションに ORM を実装しようとしていますが、うまくいきません。まず、単純なテスト モデルをインスタンス化しようとしています。

そして、コントローラーでこれを試します:

しかし、コンストラクターを通過することさえできません。デバッガーが停止し、「ide キー xxxxx との着信接続を待機しています」(乱数) というメッセージが表示されます。

ところで、カート モデルのクラス ファイル名は小文字ですが、クラス名は大文字です。コンストラクターで両方を試しました。

インストールの手順に注意深く従い、2 つのデータマッパー ファイルをライブラリと構成フォルダーにコピーし、データマッパー ライブラリを自動ロードしました。

しかし、それはうまくいきません。何か不足していますか?マップしようとしているテーブルは、実際には id フィールドとユーザー名フィールドしかないテスト テーブルです。検証配列を実際には理解していませんが、ドキュメントの例に従って、自分のフィールドに変更しました。id フィールドは、誰も検証配列に入れていないようです。

また、私は CodeIgniter の初心者です。