جلب المفاتيح الأساسية من سجلات متعددة-laravel
سؤال
أحتاج إلى سحب مجموعة من المفاتيح الأساسية في طلقة واحدة
أي
select p_k from table where 1=1
يجب أن تكون النتيجة
$p_k=array(1,2,5,7)
حاولت
$news = DB::table('news')
ولكن بالنسبة للمعرف أحتاج إلى عمل حلقة.لا توجد طريقة اختصار عبر orm
طاولتي هي
id heading news
1 heading1 news1
2 heading2 news2
أحتاج إلى قائمة بالمعرف (المفتاح الأساسي) في صفيف كما أدناه
array(1,2)
$news = DB::table('news')
سوف feth جميع الحقول وعلاوة على ذلك أنا بحاجة للذهاب من خلال الحلقة
foreach($news as $val){
$id[]=$val->id
}
وهذا طويل جدًا..أحتاج إلى طريقة اختصار حتى أتمكن من سحب هذا المفتاح الأساسي مباشرة على المصفوفة بدون حلقة خارجية
أحتاج إلى القيام بذلك لأن لدي جدول جسر آخر حيث يتم ربط news_id هذه
NewsTag::destroy($newsidarray);
المحلول
يمكنك تجربة هذا:
$news = News::lists('id');
باستخدام الخاص بك News
نموذج (Eloquent
) مع الجمع بين lists
طريقة.
نصائح أخرى
$ids = DB::table('news')->lists('id');
هذا سوف يفعل ذلك.المرجع هنا-
لا تنتمي إلى StackOverflow