Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

Laravel 5 एक नया रिकॉर्ड बनाना जो 3 अन्य तालिकाओं से संबंधित है

मुझे समझ नहीं आ रहा है कि इसे इतना जटिल क्यों बनाया जाए?

इसे आजमाएं:

समाधान 1

$User = User::find(Auth::id()); 
if(!$User) {
    return 'no user';
}

$Region = Region::find($request->input('region_id'));
if(!$Region) {
    return 'no region';
}

$locationData = $request->only('street_address', 'city', 'province', 'country', 'postal_code');
$Location = Location::firstOrCreate($locationData);

$rentalData = [
    'user_id' => $User->id, 
    'region_id' => $Region->id, 
    'location_id' => $Location->id
];
$Rental = Rental::firstOrCreate($rentalData);

समाधान 2

// ->remember() for caching request to prevent many queries, for faster result use apc cache in config files, no need to use memcache when You're using 1 app server

if(!User::where('id', '=', Auth::id())->remember(1440)->exists()) {
    return 'no user';
}

if(!Region::where('id', '=', $request->input('region_id'))->remember(1440)->exists()) {
    return 'no user';
}

$locationData = $request->only('street_address', 'city', 'province', 'country', 'postal_code');
$Location = Location::firstOrCreate($locationData);

$rentalData = [
    'user_id' => $User->id, 
    'region_id' => $Region->id, 
    'location_id' => $Location->id
];
$Rental = Rental::firstOrCreate($rentalData);



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql 'फ़ील्ड सूची' में अज्ञात कॉलम 'मैक' फेंकता है

  2. मैं एक MySQL परिणाम सेट के माध्यम से कैसे पुनरावृति कर सकता हूं?

  3. अद्वितीय मानों की संख्या गिनें

  4. Mysql कनेक्शन के लिए डिफ़ॉल्ट पोर्ट नंबर कैसे जांचें? कनेक्शन काम नहीं कर रहा! जेडीबीसी कनेक्शन

  5. लेफ्ट जॉइन के साथ LIKE %% का उपयोग करना