craigboyd

craigboyd

Member Since 2 Weeks Ago

Experience Points 110
Experience Level 1

4,890 experience to go until the next level!

In case you were wondering, you earn Laracasts experience when you:

  • Complete a lesson — 100pts
  • Create a forum thread — 50pts
  • Reply to a thread — 10pts
  • Leave a reply that is liked — 50pts
  • Receive a "Best Reply" award — 500pts
Lessons Completed 0
Lessons
Completed
Best Reply Awards 0
Best Reply
Awards
  • Start Your Engines Achievement

    Start Your Engines

    Earned once you have completed your first Laracasts lesson.

  • First Thousand Achievement

    First Thousand

    Earned once you have earned your first 1000 experience points.

  • One Year Member Achievement

    One Year Member

    Earned when you have been with Laracasts for 1 year.

  • Two Year Member Achievement

    Two Year Member

    Earned when you have been with Laracasts for 2 years.

  • Three Year Member Achievement

    Three Year Member

    Earned when you have been with Laracasts for 3 years.

  • Four Year Member Achievement

    Four Year Member

    Earned when you have been with Laracasts for 4 years.

  • Five Year Member Achievement

    Five Year Member

    Earned when you have been with Laracasts for 5 years.

  • School In Session Achievement

    School In Session

    Earned when at least one Laracasts series has been fully completed.

  • Welcome To The Community Achievement

    Welcome To The Community

    Earned after your first post on the Laracasts forum.

  • Full Time Learner Achievement

    Full Time Learner

    Earned once 100 Laracasts lessons have been completed.

  • Pay It Forward Achievement

    Pay It Forward

    Earned once you receive your first "Best Reply" award on the Laracasts forum.

  • Subscriber Achievement

    Subscriber

    Earned if you are a paying Laracasts subscriber.

  • Lifer Achievement

    Lifer

    Earned if you have a lifetime subscription to Laracasts.

  • Laracasts Evangelist Achievement

    Laracasts Evangelist

    Earned if you share a link to Laracasts on social media. Please email [email protected] with your username and post URL to be awarded this badge.

  • Chatty Cathy Achievement

    Chatty Cathy

    Earned once you have achieved 500 forum replies.

  • Laracasts Veteran Achievement

    Laracasts Veteran

    Earned once your experience points passes 100,000.

  • Ten Thousand Strong Achievement

    Ten Thousand Strong

    Earned once your experience points hits 10,000.

  • Laracasts Master Achievement

    Laracasts Master

    Earned once 1000 Laracasts lessons have been completed.

  • Laracasts Tutor Achievement

    Laracasts Tutor

    Earned once your "Best Reply" award count is 100 or more.

  • Laracasts Sensei Achievement

    Laracasts Sensei

    Earned once your experience points passes 1 million.

  • Top 50 Achievement

    Top 50

    Earned once your experience points ranks in the top 50 of all Laracasts users.

07 Jun
1 week ago

craigboyd left a reply on Error In My View

@johnbraun ....thanks. That solved it.

I hate it when I miss stuff staring me in the face....

craigboyd left a reply on Error In My View

@johnbraun

So here is what I have in my create and store methods in the Controller:

    public function create()
    {
        $coursetypes = CourseType::pluck('type_nm','id');
        return view('courses.create', compact('coursetypes'));
    }

    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function store(Request $request)
    {
        $request->validate([
            'course_nm'=>'required',
            'course_desc'=>'required',
            'course_type_id'=>'required'
        ]);

        $course = new Course([
            'course_nm' => $request->get('course_nm'),
            'course_desc' => $request->get('course_desc')
        ]);
        $course->save();
        return redirect('/courses')->with('success', 'Course saved!');
    }

Are you saying that I should have some kind of array of required fields in the return of the create function?

I know in the RegisterController in the Auth module (package?) I see this:

return User::create([
    'name' => $data['name'],
    'email' => $data['email'],
...

Like that?

craigboyd left a reply on Error In My View

Hi @johnbraun ,

So are those parameters in the Controller then? I did update the model and it made no difference:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Course extends Model
{
    protected $fillable = [
        'course_nm',
        'course_desc',
        'course_type_id'
    ];
}

Sorry for such basic questions ~ I do very much appreciate though.

craigboyd left a reply on Error In My View

@johnbraun and now that I am trying to save the record a new problem:

SQLSTATE[23502]: Not null violation: 7 ERROR: null value in column "course_type_id" violates not-null constraint DETAIL: Failing row contains (6, 2019-06-07 14:13:01, 2019-06-07 14:13:01, English 1, The first English class required for a student; covers Early Ame..., null). (SQL: insert into "courses" ("course_nm", "course_desc", "updated_at", "created_at") values (English 1, The first English class required for a student; covers Early American Literature and grammar, 2019-06-07 14:13:01, 2019-06-07 14:13:01) returning "id")

I checked the model (Course.php) and it was missing the "course_type_id" column so I added it and restarted the server, but I still got the same error.

Any idea why this insert isn't associating the value with the INSERT statement?

craigboyd left a reply on Error In My View

@johnbraun thanks. I will do that. For me the next step is then to figure out what do with it once I know that. ;)

craigboyd left a reply on Error In My View

Hi @johnbraun ,

That worked!!

I am going to have to study this a bit for it to actually make sense, but at least it is working.

I have beating my head against this wall for a couple days now.

THANK YOU!!!

craigboyd started a new conversation Error In My View

Hi All,

I am completely new to PHP. I am trying to do a drop down box populated by database values. I am more/less following this pattern: https://laracasts.com/discuss/channels/general-discussion/select-dropdown-option-seleted-in-laravel But I am getting an error:

ErrorException (E_ERROR)
Trying to get property 'id' of non-object (View: /home/craig/projects/web/laravelTest01/resources/views/courses/create.blade.php)

Here is my controller code:

   public function create()
    {
        $coursetypes = CourseType::pluck('type_nm','id');
        return view('courses.create', compact('coursetypes'));
    }

Here is my relevant(?) view code:

          <div class="form-group">
            <select class="form-control" name="course_type_id">
              @foreach($coursetypes as $coursetype )
              <option value="{{$coursetype->id}}">{{$coursetype->type_nm}}</option>
              @endforeach
            </select>
          </div>

Any ideas about where I am going wrong? Or is there an easier / better approach than the one I am taking?

Thanks.