giacholari

giacholari

Member Since 3 Years Ago

Experience Points
96,510
Total
Experience

3,490 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
936
Lessons
Completed
Best Reply Awards
0
Best Reply
Awards
  • start-engines Created with Sketch.

    Start Your Engines

    Earned once you have completed your first Laracasts lesson.

  • first-thousand Created with Sketch.

    First Thousand

    Earned once you have earned your first 1000 experience points.

  • 1-year Created with Sketch.

    One Year Member

    Earned when you have been with Laracasts for 1 year.

  • 2-years Created with Sketch.

    Two Year Member

    Earned when you have been with Laracasts for 2 years.

  • 3-years Created with Sketch.

    Three Year Member

    Earned when you have been with Laracasts for 3 years.

  • 4-years Created with Sketch.

    Four Year Member

    Earned when you have been with Laracasts for 4 years.

  • 5-years Created with Sketch.

    Five Year Member

    Earned when you have been with Laracasts for 5 years.

  • school-session Created with Sketch.

    School In Session

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

  • welcome-newcomer Created with Sketch.

    Welcome To The Community

    Earned after your first post on the Laracasts forum.

  • full-time-student Created with Sketch.

    Full Time Learner

    Earned once 100 Laracasts lessons have been completed.

  • pay-it-forward Created with Sketch.

    Pay It Forward

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

  • subscriber-token Created with Sketch.

    Subscriber

    Earned if you are a paying Laracasts subscriber.

  • lifer-token Created with Sketch.

    Lifer

    Earned if you have a lifetime subscription to Laracasts.

  • lara-evanghelist Created with Sketch.

    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 Created with Sketch.

    Chatty Cathy

    Earned once you have achieved 500 forum replies.

  • lara-veteran Created with Sketch.

    Laracasts Veteran

    Earned once your experience points passes 100,000.

  • 10k-strong Created with Sketch.

    Ten Thousand Strong

    Earned once your experience points hits 10,000.

  • lara-master Created with Sketch.

    Laracasts Master

    Earned once 1000 Laracasts lessons have been completed.

  • laracasts-tutor Created with Sketch.

    Laracasts Tutor

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

  • laracasts-sensei Created with Sketch.

    Laracasts Sensei

    Earned once your experience points passes 1 million.

  • top-50 Created with Sketch.

    Top 50

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

Level 20
96,510 XP
Feb
07
2 weeks ago
Activity icon

Started a new Conversation Site Review

Hi, folks just a quick one - would you be able to give me some feedback (design-wise and the semantics) for my personal website?

https://giacholari.com

Jan
03
1 month ago
Activity icon

Started a new Conversation Stripe Checkout

Has Stripe changed the way you integrate the Checkout feature on a site since the last video @JeffreyWay posted?

Dec
10
2 months ago
Activity icon

Replied to Vue.js Code Structure

Hi @smadeira . I would probably take a microservice approach. What I mean by that. I would write the different services in separate codebases and then do integration in the main Laravel app (token-based authentication maybe?). The MVC main Laravel app would contain the API calls to your backend services and the Vue.js frontend logic. So If someone were to change the functionality of service in some way, they would need not to touch the main Laravel app.

Nov
30
2 months ago
Activity icon

Replied to Uncaught Illuminate\Contracts\Container\BindingResolutionException:

@nakov You are right yeah I will not have to change the handler if I change the service but I am used to injecting dependencies through the constructor and this seemed a bit strange. It works though thanks :)

Activity icon

Replied to Uncaught Illuminate\Contracts\Container\BindingResolutionException:

I did this because if I type-hint it in the method the report method will not work because of the interface. Therefore I resolved it within the method. Not very convenient though as if I want to inject services through the constructor in this file I cannot do so.

EDIT

@nakov you are right it works in the method

public function report(Exception $exception) { $logger = app()->make(LoggerRepositoryInterface::class) ?? null;

    if ($logger !== null) {
        $type = 'Exception';
        $message = $exception->getMessage();
        $trace = $exception->getTraceAsString();

        $logger->store($type, $message, $trace);
    }

    parent::report($exception);
}
Activity icon

Replied to Uncaught Illuminate\Contracts\Container\BindingResolutionException:

Yeah it seems that the container is empty when constructing the Handler.php file because it works in the controller when I try to resolve the repository.

EDIT

Yes I have registered the provider

*/

'providers' => [

    /*
     * Laravel Framework Service Providers...
     */
    Illuminate\Auth\AuthServiceProvider::class,
    Illuminate\Broadcasting\BroadcastServiceProvider::class,
    Illuminate\Bus\BusServiceProvider::class,
    Illuminate\Cache\CacheServiceProvider::class,
    Illuminate\Foundation\Providers\ConsoleSupportServiceProvider::class,
    Illuminate\Cookie\CookieServiceProvider::class,
    Illuminate\Database\DatabaseServiceProvider::class,
    Illuminate\Encryption\EncryptionServiceProvider::class,
    Illuminate\Filesystem\FilesystemServiceProvider::class,
    Illuminate\Foundation\Providers\FoundationServiceProvider::class,
    Illuminate\Hashing\HashServiceProvider::class,
    Illuminate\Mail\MailServiceProvider::class,
    Illuminate\Notifications\NotificationServiceProvider::class,
    Illuminate\Pagination\PaginationServiceProvider::class,
    Illuminate\Pipeline\PipelineServiceProvider::class,
    Illuminate\Queue\QueueServiceProvider::class,
    Illuminate\Redis\RedisServiceProvider::class,
    Illuminate\Auth\Passwords\PasswordResetServiceProvider::class,
    Illuminate\Session\SessionServiceProvider::class,
    Illuminate\Translation\TranslationServiceProvider::class,
    Illuminate\Validation\ValidationServiceProvider::class,
    Illuminate\View\ViewServiceProvider::class,

    /*
     * Package Service Providers...
     */

    /*
     * Application Service Providers...
     */
    App\Providers\AppServiceProvider::class,
    App\Providers\AuthServiceProvider::class,
    // App\Providers\BroadcastServiceProvider::class,
    App\Providers\EventServiceProvider::class,
    App\Providers\RouteServiceProvider::class,
    App\Providers\RepositoryServiceProvider::class,
    App\Providers\HelperServiceProvider::class,

],
Activity icon

Replied to Uncaught Illuminate\Contracts\Container\BindingResolutionException:

The Handler.php file

namespace App\Exceptions;

use Exception; use App\Repositories\Logger\LoggerRepositoryInterface; use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler;

class Handler extends ExceptionHandler { private $loggerRepository;

public function __construct(LoggerRepositoryInterface $logger)
{
    $this->loggerRepository = $logger;
}

/**
 * A list of the exception types that are not reported.
 *
 * @var array
 */
protected $dontReport = [
    //
];

/**
 * A list of the inputs that are never flashed for validation exceptions.
 *
 * @var array
 */
protected $dontFlash = [
    'password',
    'password_confirmation',
];

/**
 * Report or log an exception.
 *
 * @param  \Exception  $exception
 * @return void
 */
public function report(Exception $exception)
{
    $type = 'Exception';
    $message = $exception->getMessage();
    $trace = $exception->getTraceAsString();

    $this->loggerRepository->store($type, $message, $trace);
    parent::report($exception);
}

/**
 * Render an exception into an HTTP response.
 *
 * @param  \Illuminate\Http\Request  $request
 * @param  \Exception  $exception
 * @return \Illuminate\Http\Response
 */
public function render($request, Exception $exception)
{
    return parent::render($request, $exception);
}

}

Activity icon

Replied to Uncaught Illuminate\Contracts\Container\BindingResolutionException:

Nope, still it does not work. The actual error is this

PHP Fatal error: Uncaught Illuminate\Contracts\Container\BindingResolutionException: Target [App\Repositories\Logger\LoggerRepositoryInterface] is not instantiable while building [App\Excepti ons\Handler]. in C:\Users\giacholari\Desktop\code\uni\sparehouse\vendor\laravel\framework\src\Illuminate\Container\Container.php:979

Activity icon

Replied to Uncaught Illuminate\Contracts\Container\BindingResolutionException:

The commands you listed output the same Error

Activity icon

Replied to Uncaught Illuminate\Contracts\Container\BindingResolutionException:

Hi @Nakov, yes I do have a public constructor. Here is the code ==>

private $dataAccess;

public function __construct()
{
    $this->dataAccess = new Log;
}
Activity icon

Started a new Conversation Uncaught Illuminate\Contracts\Container\BindingResolutionException:

I get this error when trying to serve the application ==> Uncaught Illuminate\Contracts\Container\BindingResolutionException. Namespaces are correct and I have created a new provider and I have registered the provider in the config.app file. Here is the binding ==> $this->app->bind( LoggerRepositoryInterface::class, LoggerRepository::class ); in the register method of the RepositoryServiceProvider. Moreover, the use statements are correct and I did not see any typos in the individual files. Any help appreciated. Thanks :)

Nov
25
2 months ago
Activity icon

Started a new Conversation SSL Certificate In Origin Server Alognside Cloudflare

Hi. I've setup a server on digital ocean and have setup an SSL certifcate using Let's Encrypt. I added my site to cloudflare and have setup the nameservers on my domain provider. In cloudflare I have set full strict ssl. When I visit the site I see that the certificate is issued by cloudfare. Is that how it is supposed to be? I expected the Let's Encrypt certificate to show up? Any ideas?

Oct
29
3 months ago
Activity icon

Started a new Conversation Redirect With Query String Parameters

Hi,

Do you guys know if there is a way I can redirect to a route with query string parameters using the redirect(route()) helper in Laravel?

Thanks

Oct
25
3 months ago
Activity icon

Commented on Free SSL And Better Security With Cloudflare

@JeffreyWay Hi Jeffrey :) Just a question on the video... Would you minify the HTML or is it not worth the trouble?

Oct
22
4 months ago
Activity icon

Replied to View Models

Cool great stuff @snapey

Activity icon

Replied to View Models

@snapey I first saw the view models during my placement where I used C# and ASP.NET, but this is quite similar to the video. It is actually quite cool in that you encapsulate view logic in a dedicated model. Is that something that you use in your projects?

Oct
21
4 months ago
Activity icon

Started a new Conversation View Models

Hi. I came across the other day in the concept of view models in the controllers. The idea is that instead of passing a single value or an array of values, you either create a dedicated class for the view which hold the data for it or create a simple stdClass and add the relevant data as properties on the model. My question is this, are view models generally used in the Laravel ecosystem or is this breaking any pattern or whatsoever? All in all do view models provide real value? Thanks :)