hj_junior

hj_junior

Member Since 4 Months Ago

Experience Points 80
Experience
Level
Lessons Completed 0
Lessons
Completed
Best Reply Awards 0
Best Answer
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.

19 Jun
4 months ago

hj_junior left a reply on BelongsToMany Why Is Returning Just The First?

I got it do, but I have a lot of changes, I tried to keep everything in the standart of laravel, so know I'm not using prefix and nothing else, so the breaking changes:

Migrations

    public function basetable() {
        $this->integer('id')->autoIncrement()->comment("Identificação");
        $this->timestamp('created_at')->useCurrent()->comment("timestamp de criação");
        $this->timestamp('updated_at')->comment("timestamp de atualização")->nullable();
        $this->timestamp('deleted_at')->nullable()->comment("timestamp de exclusão")->nullble();
    }
´´´


$this->schema->create('perfilacessos', function (CustomBlueprint $table) {
    $table->basetable();
    $table->text('nome');
});

    $this->schema->create('paginas', function (CustomBlueprint $table) {
        $table->basetable();
        $table->text('nome');
    });

    $this->schema->create('pagina_perfilacessos', function (CustomBlueprint $table) {
        $table->basetable();
        $table->integer('perfilacessos_id');
        $table->integer('pagina_id');
        $table->foreign('perfilacessos_id')->references('id')->on('perfilacessos');
        $table->foreign('pagina_id')->references('id')->on('paginas');
    });

´´´

Models

PerfilAcesso -> Perfilacessos (Renamed)

    public function paginas () {
        return $this->belongsToMany(Pagina::class);
    }
´´´
#### PaginasSistema -> Pagina (Renamed)
public function perfilacesso () {
    return $this->belongsToMany(Perfilacessos::class);
}

´´´

18 Jun
4 months ago

hj_junior left a reply on BelongsToMany Why Is Returning Just The First?

@Snapey I think shoud be belongsToMany because of this, look this ER diagram

(https://i.imgur.com/X9q3dhg.png)

hj_junior left a reply on BelongsToMany Why Is Returning Just The First?

@Snapey Yes, sorry, I've added this information in the blocks of code too and some stranger think that I have see it in the query.

hj_junior started a new conversation BelongsToMany Why Is Returning Just The First?

I'm trying to create a table who will group a list of permissions to each user, so I have created this following tables:

Table: N_perfilacesso Group of permissions (pages)

| Column | Details | | ------------- | ------------- | | _id | primary key | | nome | text |

Table: N_paginas Just list the pages of system

| Column | Details | | ------------- | ------------- | | _id | primary key | | nome | text |

Table: N_perfilacesso_paginas List of pages of each group of permissions

| Column | Details | | ------------- | ------------- | | _id | primary key | | _perfilacesso | References to N_perfilacesso | | _pagina | References to N_paginas |

So now, the models:

PerfilAcesso

    protected $hidden = ['deleted_at','created_at','updated_at','pivot'];
    public function paginas () {
        return $this->belongsToMany('App\Models\PaginasSistema', 'N_perfilacesso_paginas', '_pagina', '_id');
    }

PerfilAcessoPaginas

    protected $hidden = ['deleted_at','created_at','updated_at','pivot'];

PaginasSistema

    protected $hidden = ['deleted_at','created_at','updated_at','pivot'];
    public function perfilacesso () {
        return $this->belongsToMany('App\Models\PerfilAcesso', 'N_perfilacesso_paginas', '_pagina', '_id');
    }

So in the controller I find the id of profile of access, and after I want to list the pages

    $perfilacesso = PerfilAcesso::findOrFail($id);
    return response([
        'status' => 'ok',
        'pages' => $perfilacesso->paginas
    ]);

But I'm getting result with just the first of result in array

{
    "status": "ok",
    "paginas": [
        {
            "_id": 1,
            "nome": "evadidos.grafico.instituicao"
        }
    ]
}