Why would you name the accessor method the same as your column, unless you want to modify the existing value?
In case you want to modify an existing value, then take a look at the documentation for its usage:
https://laravel.com/docs/master/eloquent-mutators#accessors-and-mutators
Basically you need this:
public function getPrimaryColumnAttribute($value)
{
return $value;
}
Because calling $this->primary_column is like calling the same method over and over again.