how can i implement standard laravel coding methods

Viewed 20

I developed the web application for interviews within 3 hours time limitation. Here is the application link in git https://github.com/udithaharshana/php_uditha , But they reviewed my application and they commented as

its basic code, is not recommended

here is my controller, some function

    /* Saller Home Page */
    public function HomePage()
    {
        return view('pages/saller_home');
    }

    /* Saller New Page */
    public function New()
    {
        $data['routes'] = Route::Where('status', '1')->get();

        return view('pages/saller_edit')->with($data);
    }

    /* Saller Edit Page */
    public function Edit(Request $request)
    {
        try {
            $data['saller'] = Saller::find($request->sid);
            $data['routes'] = Route::Where('status', '1')->get();

            return view('pages/saller_edit')->with($data);
        } catch (Exception $e) {
            return  redirect()->back()->withErrors(App::environment('local') ? $e->getMessage() : '');

        }
    }

    /* Validation funtion */
    //saleer name validation
    public function name_validate(Request $request)
    {
        $data = Saller::where('name', $request->name)->where('sid', '!=', $request->sid)->exists();
        return response()->json($data);
    }

    /*  Saller save funtion
        using both new/edit pages
    */
    public function save(Request $request)
    {
        try {
            /* backend validation */
            $rules = [
                'name' => ['required', Rule::unique('saller', 'name')->ignore($request->sid, 'sid')],
                'telephone' => 'required',
                'join_date' => 'required',
                'rid' => 'required',
                'email' => ['nullable', 'email', Rule::unique('saller', 'email')->ignore($request->sid, 'sid')]
            ];
            $customMessages = [
                'name.required' => 'Saller Name is required',
                'name.unique'=> 'Already Existing Saller Name',
                'telephone.required' => 'Saller telephone is required',
                'join_date.required' => 'Join Date is required',
                'email.email' => 'Invalid email address',
                'email.unique' => 'Already Existing Saller email address',
            ];

            /* if validation fails redirect back with errors */
            $validatedData = Validator::make($request->all(), $rules, $customMessages);
            if ($validatedData->fails()) {
                return redirect()->back()->withErrors($validatedData)->withInput();
            } else {

                /* create or update saller */
                $saller = $request->sid ? Saller::find($request->sid) : new Saller();
                $saller->name = $request->name;
                $saller->email = $request->email;
                $saller->telephone = $request->telephone;
                $saller->route_id = $request->rid;
                $saller->join_date = date('Y-m-d', strtotime(str_replace('/', '-', $request->join_date)));
                $saller->comment = $request->remark;
                $saller->save();

                return redirect('/sales_team');
            }
        } catch (Exception $e) {
            return  redirect()->back()->withErrors(App::environment('local') ? $e->getMessage() : '');
        }
    }

I use the model, eloquent, blade and other Laravel common things. So I need to know how to implement this code using professional and standard coding methods. And what i use bad methods in my project.

0 Answers
Related