[英]Laravel Not Inserting Json Data Into MySQL
请参阅下面的代码,无法弄清楚出了什么问题,但插入没有发生......关于如何调试/修复的任何想法
Laravel - Controller
namespace App\Http\Controllers;
use App\Models\PhoneContactsPhonesModel;
use Illuminate\Http\Request;
class CreatePhoneContactsController extends Controller
{
public function create(Request $request, $id)
{
$users = new PhoneContactsPhonesModel;
$json = dd(json_decode($request->getContent(), true));
foreach ($json as $key => $value) {
$users->mysql_user_id = $id;
$users->phone = $key;
$users->name = $value;
$users->save();
}
}
}
Laravel - 路线
Route::post('create_phone_contacts/{id}', 'CreatePhoneContactsController@create');
foreach 循环出了点问题 - 它似乎与循环外的硬编码值一起工作得很好
删除 dd() 并在 for 循环中创建 object。 这将解决您的问题。
namespace App\Http\Controllers;
use App\Models\PhoneContactsPhonesModel;
use Illuminate\Http\Request;
class CreatePhoneContactsController extends Controller
{
public function create(Request $request, $id)
{
$json = json_decode($request->getContent(), true);
foreach ($json as $key => $value) {
$users = new PhoneContactsPhonesModel;// ---> here
$users->mysql_user_id = $id;
$users->phone = $key;
$users->name = $value;
$users->save();
}
}
}
您所要做的就是从您的代码中删除 dd() 。
改变这个
$json = dd(json_decode($request->getContent(), true)); //change here
对此
$json = json_decode($request->getContent(), true); //change this remove dd()
它会工作..
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.