タグ付けされた質問 「eloquent」

Laravelに含まれるEloquent ORMは、データベースを操作するための美しくシンプルなActiveRecord実装を提供します。各データベーステーブルには、そのテーブルとの対話に使用される対応する「モデル」があります。モデルを使用すると、テーブルのデータをクエリしたり、テーブルに新しいレコードを挿入したりできます。

20
Laravel 3/4で実行されたクエリを取得する
LaravelクエリビルダーまたはEloquent ORMを使用して、Laravel 3/4で未加工のSQLクエリを取得するにはどうすればよいですか? たとえば、次のようなもの: DB::table('users')->where_status(1)->get(); または: (posts (id, user_id, ...)) User::find(1)->posts->get(); それ以外の場合、少なくとも、実行されたすべてのクエリをlaravel.logに保存するにはどうすればよいですか?

13
Laravel Eloquentの作成と更新
新しいレコードを挿入したり、存在する場合は更新したりするための省略形は何ですか? <?php $shopOwner = ShopMeta::where('shopId', '=', $theID) ->where('metadataKey', '=', 2001)->first(); if ($shopOwner == null) { // Insert new record into database } else { // Update the existing record }

15
テーブルの最後の行を選択
テーブルに挿入された最後のファイルを取得したいのですが。メソッドfirst()が存在し、テーブルの最初のファイルが提供されることは知っていますが、最後の挿入を取得する方法がわかりません。
163 laravel  eloquent 

11
雄弁なORMを使用したLaravelへの一括挿入
Eloquent ORMを使用してLaravelでデータベースの一括挿入を実行するにはどうすればよいですか? Laravel:https ://stackoverflow.com/a/10615821/600516でこれを達成したいの ですが、次のエラーが発生します。 SQLSTATE [HY093]:無効なパラメーター番号:名前付きパラメーターと位置パラメーターが混在しています。

8
関連モデルが存在するかどうかのLaravelチェック
関連するモデルがあるEloquentモデルがあります。 public function option() { return $this->hasOne('RepairOption', 'repair_item_id'); } public function setOptionArrayAttribute($values) { $this->option->update($values); } モデルを作成するときに、必ずしも関連モデルがあるとは限りません。更新すると、オプションが追加される場合と追加されない場合があります。 したがって、関連するモデルが存在するかどうかを確認して、それぞれ更新または作成する必要があります。 $model = RepairItem::find($id); if (Input::has('option')) { if (<related_model_exists>) { $option = new RepairOption(Input::get('option')); $option->repairItem()->associate($model); $option->save(); $model->fill(Input::except('option'); } else { $model->update(Input::all()); } }; <related_model_exists>私が探しているコードはどこにありますか。

6
Laravel Eloquentクエリでテーブルをエイリアスする方法(またはクエリビルダーを使用)
Laravelのクエリビルダーを使用しているとしましょう: $users = DB::table('really_long_table_name') ->select('really_long_table_name.id') ->get(); このSQLに相当するものを探しています。 really_long_table_name AS short_name これは、多くの選択と場所を入力する必要がある場合に特に役立ちます(または通常、選択の列エイリアスにエイリアスも含め、結果の配列で使用されます)。テーブルエイリアスがないと、入力がはるかに多くなり、すべてが読みにくくなります。laravel docsでアイデアが見つからない場合、アイデアはありますか?

10
Laravel Eloquent「WHERE NOT IN」
でクエリを書き込むのに問題がありますlaravel eloquent ORM。 私の質問は SELECT book_name,dt_of_pub,pub_lang,no_page,book_price FROM book_mast WHERE book_price NOT IN (100,200); 次に、このクエリをlaravel eloquentに変換します。

2
Eloquent / Fluentを使用して単一のクエリから複数の行を挿入する方法
次のクエリがあります。 $query = UserSubject::where('user_id', Auth::id())->select('subject_id')->get(); 予想どおり、次の結果が得られます。 [{"user_id":8,"subject_id":9},{"user_id":8,"subject_id":2}] 上記の結果を別のテーブルにコピーして、テーブルが次のようになるようにする方法はありますか? ID|user_id|subject_id 1 |8 |9 2 |8 |2 私が抱えている問題は、$queryが任意の数の行を期待できるため、不明な数の行を反復処理する方法が不明であることです。
143 php  sql  laravel  eloquent 

18
laravel eloquentで特定の列を選択する方法
テーブルに7つの列があり、そのうちの2つだけを選択したいとします。 SELECT `name`,`surname` FROM `table` WHERE `id` = '1'; laravel eloquentモデルでは、次のようになります Table::where('id', 1)->get(); しかし、この式ではidが1に等しいすべての列が選択されると思います。2つの列(name、surname)だけが必要です。2つの列のみを選択する方法



4
Laravelでの関係の管理、リポジトリパターンの順守
Laravelの優れたデザインパターンに関するT. Otwellの本を読んだ後、Laravel 4でアプリを作成しているときに、アプリケーションのすべてのテーブルのリポジトリを作成していることに気付きました。 私は次のテーブル構造になりました: 学生:ID、名前 コース:id、name、teacher_id 教師:ID、名前 割り当て:id、name、course_id スコア(学生と課題の間のピボットとして機能):student_id、assignment_id、scores これらすべてのテーブルの検索、作成、更新、削除メソッドを備えたリポジトリクラスがあります。各リポジトリには、データベースと対話するEloquentモデルがあります。関係は、Laravelのドキュメント(http://laravel.com/docs/eloquent#relationships)のモデルで定義されています。 新しいコースを作成するときは、コースリポジトリのcreateメソッドを呼び出すだけです。そのコースには課題があるので、課題を作成するときに、コースの各生徒のスコアのテーブルにエントリも作成します。これはアサインメントリポジトリを通じて行います。これは、課題リポジトリが2つのEloquentモデル、つまり課題モデルと生徒モデルと通信することを意味します。 私の質問は次のとおりです:このアプリはおそらくサイズが大きくなり、より多くの関係が導入されるため、リポジトリ内の異なるEloquentモデルと通信することは良い習慣ですか、またはこれを代わりに他のリポジトリを使用して行うべきですか(割り当てリポジトリから他のリポジトリを呼び出すことを意味します) )それともEloquentモデルで一緒に行う必要がありますか? また、スコアテーブルを課題と生徒の間のピボットとして使用することは良い習慣ですか、それとも別の場所で行う必要がありますか?

10
Laravel、サブクエリでこれを行う方法
Laravelでこのクエリを作成するにはどうすればよいですか。 SELECT `p`.`id`, `p`.`name`, `p`.`img`, `p`.`safe_name`, `p`.`sku`, `p`.`productstatusid` FROM `products` p WHERE `p`.`id` IN ( SELECT `product_id` FROM `product_category` WHERE `category_id` IN ('223', '15') ) AND `p`.`active`=1 結合を使用してこれを行うこともできますが、パフォーマンスのためにこの形式が必要です。

4
関係の列のLaravel Eloquent Sum
shoppingcartアプリケーションを開発してきましたが、次の問題が発生しました。 ユーザー、製品、カートオブジェクトがあります。 -Cartテーブルには、「id」、「user_id」、「product_id」、およびタイムスタンプの列のみが含まれています。 -UserModelの「hasMany」カート(ユーザーが複数の製品を保管できるため)。 -CartModel「belongsTo」ユーザーおよびCartModel「hasMany」製品。 次に、製品の合計を計算するために、次のように呼び出しますAuth::user()->cart()->count()。 私の質問は、このユーザーがカートに入れている製品の価格(製品の列)のSUM()を取得するにはどうすればよいですか? 私はこれをEloquentで実現し、クエリを使用することではなく実現したいと考えています(主にそれがよりクリーンであると信じているため)。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.