JSONをデータベースに保存してロードしようとしています
収納してみた
{name: "John", age: 31, city: "New York"}
正しく保存されました。データベースを確認したところ、正しく表示されました。
{name: "John", age: 31, city: "New York"}
景色を眺め続けた
"{name: \"John\", age: 31, city: \"New York\"}"
これは私のコードです。
public function store()
{
$paste = new Paste;
$paste->uuid = Str::uuid()->toString();
$paste->data = trim(Request::get('data',''));
$paste->save();
return Redirect::to('/paste/'.$paste->uuid)->with('success', 'Created');
}
public function show($uuid)
{
$paste = Paste::where('uuid',$uuid)->first();
return response()->json($paste->data);
}
ヒントはありますか?
ここで再現可能
https://www.bunlongheng.com/paste
#2 を試す
私がこれをしたら
public function show($uuid)
{
$paste = Paste::where('uuid',$uuid)->first();
return View::make('layouts.fe.pastes.show', get_defined_vars());
}
私の見解では、この1行しかありません
{!!$paste->data!!}
今提出したものと同じデータを取得します。
{name: "John", age: 31, city: "New York"}
しかし、ブラウザはそれをテキストとして検出しましたが、私がやろうとしていることの目的を破った応答 JSON ではありませんでした。
#3 を試す
public function show($uuid)
{
$paste = Paste::where('uuid',$uuid)->first();
return response()->json(stripslashes($paste->data));
}
結果
"{name: \"John\", age: 31, city: \"New York\"}"
#4 を試す
public function show($uuid)
{
$paste = Paste::where('uuid',$uuid)->first();
return View::make('layouts.fe.pastes.show', get_defined_vars());
}
見る
{{ json_encode($paste->data, JSON_UNESCAPED_SLASHES) }}
結果
"{name: \"John\", age: 31, city: \"New York\"}"
#5 を試す
問題は保存にあると思います...読み込みとレンダリングではありません。
私は試した
return response()->json($paste);
私のJSONパーサーはそれを検出しました...
{
"id": 11,
"status": 0,
"uuid": "0c40f97d-7d98-42c6-864e-71d3ed81eed3",
"name": "n6ou",
"password": "",
"expiration": "",
"type": "json",
"data": "{name: \"John\", age: 31, city: \"New York\"}",
"created_at": "2021-04-22T22:53:11.000000Z",
"updated_at": "2021-04-22T22:53:11.000000Z"
}
収納していたのはこちら
$paste->data = trim(Request::get('data',''));
$paste->save();
#6 を試す
私のデータ/コンテンツに疑問を持っている方へ
Pastebinに同じ行を貼り付けてみました
それはきれいにされています、あなたは下に見ることができます。