Laravel, Show (), Edit (), функции обновления не работают - PullRequest
0 голосов
/ 12 сентября 2018

В приведенном ниже коде показаны методы, обновление редактирования не работает.

<?php

namespace App\Http\Controllers\admins;

use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\contact;
use Image;
use Auth;
use Storage;
use File;

class ContactController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
        $contact = Contact::orderby('created_at', 'desc')->paginate(5);

        //$agent=Agent::orderby('id','desc')->paginate(5);
        return view('admin.messages.index', ['contacts' => $contact]);
    }

    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create()
    {
        return back()->with('success', 'Message can only be created by Users end.');
    }

    /** * Display the specified resource.
     *
     * @param \App\contact $contact
     * @return \Illuminate\Http\Response
     */
    public function show(contact $contact)
    {
        dd(['contact' => $contact]);
        //return back()->with('success','Message Contents Are Already Shown');
    }

    /** 
     * Show the form for editing the specified resource. 
     * 
     * @param \App\contact $contact 
     * @return \Illuminate\Http\Response 
     */
    public function edit(contact $contact)
    {
        return view('admin.messages.edit', compact('contact'));
    }

    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request $request
     * @param  \App\contact $contact
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, contact $contact)
    {
        dd($request);
    }

    /**
     * Remove the specified resource from storage.
     *
     * @param  \App\contact $contact
     * @return \Illuminate\Http\Response
     */
    public function destroy(contact $contact)
    {
        return back()->with('success', 'Message history can not be Deleted. ');
    }
}

1 Ответ

0 голосов
/ 12 сентября 2018

Предполагается, что вы используете слаг в маршруте, подобном contacts/{ slug }

public function show(contact $contact)
{
    dd(['contact' => $contact]);
    //return back()->with('success','Message Contents Are Already Shown');
}

Получает идентификатор, а не контакт ... вы инициализируете / объявляете в параметре функции как контакт, поэтому он каким-то образом получаетприведен к контакту ... но это идентификатор, вы должны сделать что-то вроде:

public function show($id)
{
    $contact = Contact::findOrFail($id);
    dd(['contact' => $contact]);
    //return back()->with('success','Message Contents Are Already Shown');
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...