У меня есть таблица Pemeliharaan
с колонкой pertanyaan
. В этом столбце у меня есть данные JSON, как это: //
Я обновляю свой вопрос, это не показывает массив для пользователя реляционной таблицы и alat. Как? Мне нужно объявить снова в моем контроллере? Я обновляю снова, теперь я могу показать данные JSON. Как я могу разобрать это?
Pemeliharaan {#274 ▼
#table: "pemeliharaan"
#connection: "mysql"
#primaryKey: "id"
#keyType: "int"
+incrementing: true
#with: []
#withCount: []
#perPage: 15
+exists: true
+wasRecentlyCreated: false
#attributes: array:9 [▼
"id" => 42
"user_id" => 2
"alat_id" => 1
"pertanyaan" => array:8 [▼
"question1" => "Periksa kondisi kelistrikan dan kabel"
"answer1" => "false"
"question2" => "Periksa kondisi kabel dan tempat sambungan"
"answer2" => "false"
"question3" => "Periksa kondisi pencetakan (tinta dan kertas printer)"
"answer3" => "false"
"question4" => "Fix and squish bugs"
"answer4" => "false"
]
"catatan" => "22-11-1996"
"status" => "Harian"
"deleted_at" => null
"created_at" => "2019-03-28 15:41:44"
"updated_at" => "2019-03-28 15:41:44"
]
#original: array:9 [▶]
Это данные вопроса и ответа. И у меня есть такая точка зрения. У меня есть функция шоу и showQuestion
.
И смотреть вот так
//View // no problem on here
<div class="box-body table-responsive no-padding">
<table class="table table-hover">
<tbody><tr>
<th>No</th>
<th>Nama Alat</th>
<th>Waktu</th>
<th>User Input</th>
<th>Action</th>
<th>Tanggal</th>
</tr>
@php
$no=0;
@endphp
@foreach ($pemeliharaan as $i)
<tr>
<td>{{ ++$no }} </td>
<td>{{ $i->alat->nama_alat}}</td>
<td>{{ $i->status}}</td>
<td>{{ $i->user->name}}</td>
<td> <a href="/user/show/question/{{ $i->id }}" > <span class="label label-primary">Lihat Data</span> </a></td>//in here redirect to showQuestion
<td>{{ $i->created_at}}</td>
</tr>
@endforeach
</tbody></table>
</div>
viewQuestion
(если я нажму кнопку на столе, то просмотрите эти данные)
@if( !is_null($pemeliharaan) )
<p> Laporan : {{ $pemeliharaan->status }} </p>
<p> Tanggal : {{ $pemeliharaan->created_at }} </p>
<p> Jenis Alat : {{ $pemeliharaan->alat->nama_alat }} </p>
<p> User : {{ $pemeliharaan->user->name }} </p>
<p> pertanyaan : {{ $pemeliharaan['question1'] }} </p>// now showing anything
@endif
@foreach(json_decode($pemeliharaan, true) as $value)
pertanyaan : {{ $value->pertanyaan['question1'] }}
@endforeach //corect me at here
//this is I want to decode this json but i dont
знаю, что я делаю, ха-ха: (
это представление (без вопросов и ответов) не содержит ошибки.
это мой контроллер:
public function show()
{
$pemeliharaan = Pemeliharaan::with(['user','alat'])->get();
return view('users.view',['pemeliharaan' => $pemeliharaan]);
}
public function showQuestion($id)
{
$pemeliharaan = Pemeliharaan::find($id);
$pemeliharaan->pertanyaan = json_decode($pemeliharaan->pertanyaan,true);
return view('users.view_question',compact('pemeliharaan'));
}
с такой ошибкой
Неопределенный индекс: alat (Просмотр: /var/www/html/new/resources/views/users/view_question.blade.php)
Я не знаю, как декодировать и как просматривать в клинке