sileence / hireme

Proyecto construido con Laravel para el curso de PHP y Laravel 4
22 stars 22 forks source link

Diseño de la BD #1

Open gmlo89 opened 10 years ago

gmlo89 commented 10 years ago

Hola buen día. Tengo una duda: Si los usuarios pueden ser administrador o candidatos, entonces la tabla de candidatos no debería llevar un campo user_id para relacionarlos?

Por que creo que hasta ahorita se esta asumiendo que todos los usuarios son candidatos y que además si un usuario tiene el ID 1 su "candidato" tendrá el ID 1 también..

Saludos.

sileence commented 10 years ago

Yo usé el campo id para relacionar ambas tablas, eso es posible en MySQL

Y la tabla users tiene un campo type que es el que uso al final para dividir candidatos y admins

2014-06-25 16:38 GMT-04:30 gmlo89 notifications@github.com:

Hola buen día. Tengo una duda: Si los usuarios pueden ser administrador o candidatos, entonces la tabla de candidatos no debería llevar un campo user_id para relacionarlos?

Por que creo que hasta ahorita se esta asumiendo que todos los usuarios son candidatos y que además si un usuario tiene el ID 1 su "candidato" tendrá el ID 1 también..

Saludos.

— Reply to this email directly or view it on GitHub https://github.com/sileence/hireme/issues/1.

gmlo89 commented 10 years ago

Pero si 2 usuarios se registran (A y B ) en ese orden.. usuario A -> ID 1 usuario B -> ID 2

Si el usuario B es el primero en editar su perfil entonces se generaría un registro en la tabla candidates con el ID del usuario B (2)

Se puede hacer eso? no afecta que el campo sea del tipo increments?

Y si el usuario con ID 3 es admin

y el usuario con ID 4 es candidate

Se va saltar un numero cuando registre su perfil no?

sileence commented 10 years ago

El campo ID de la tabla candidates no es de tipo incremento o sí?

2014-06-25 17:14 GMT-04:30 gmlo89 notifications@github.com:

Pero si 2 usuarios se registran (A y B ) en ese orden.. usuario A -> ID 1 usuario B -> ID 2

Si el usuario B es el primero en editar su perfil entonces se generaría un registro en la tabla candidates con el ID del usuario B (2)

Se puede hacer eso? no afecta que el campo sea del tipo increments?

Y si el usuario con ID 3 es admin

y el usuario con ID 4 es candidate

Se va saltar un numero cuando registre su perfil no?

— Reply to this email directly or view it on GitHub https://github.com/sileence/hireme/issues/1#issuecomment-47162988.

gmlo89 commented 10 years ago

Si, si lo es.

Schema::create('candidates', function(Blueprint $table) {

$table->increments('id');

        $table->string('website_url');
        $table->text('description');
        $table->enum('job_type', ['full', 'partial', 'freelance']);
        $table->integer('category_id')->unsigned();
        $table->boolean('available');
        $table->string('slug');

        $table->foreign('category_id')->references('id')->on('categories');

$table->timestamps(); });

sileence commented 10 years ago

Mi error entonces, no debería serlo, la idea es asignarlo manualmente, que fue lo que hice en los seeders

https://github.com/sileence/hireme/blob/master/app/database/seeds/CandidateTableSeeder.php#L26

My bad, quítale el autoincrement and you are good to go again

On Wed, Jun 25, 2014 at 6:01 PM, gmlo89 notifications@github.com wrote:

Si, si lo es.

Schema::create('candidates', function(Blueprint $table) {

$table->increments('id');

    $table->string('website_url');
    $table->text('description');
    $table->enum('job_type', ['full', 'partial', 'freelance']);
    $table->integer('category_id')->unsigned();
    $table->boolean('available');
    $table->string('slug');

    $table->foreign('category_id')->references('id')->on('categories');

$table->timestamps(); });

— Reply to this email directly or view it on GitHub https://github.com/sileence/hireme/issues/1#issuecomment-47167487.