Function in the controller for voting projects has two foreign keys, user_id
and projeto_idProjeto
, follows function:
public function votar($id){
$usuario = Auth::user()->id;
$votoss = Votos::where('projeto_idProjeto','=',$id)->where('users_id','=',$usuario)->first();
if($votoss == null) {
Votos::create([
'users_id' => $usuario,
'projeto_idProjeto' => $id
]);
$projeto = Projetos::find($id);
$projeto->numvotos += 1;
if($projeto->numvotos == $projeto->metaVotos){
$projeto->statusProjeto = 1;
}
$projeto->save();
}
return redirect ('/projetos');
}
Model Votes:
namespace App;
use Illuminate\Database\Eloquent\Model;
class Votos extends Model
{
protected $primaryKey = 'idVoto';
protected $table = 'votos';
protected $fillable = ['users_id','projeto_idProjeto'];
public function projetos(){
return $this->belongsTo('App\Projetos');
}
public function user(){
return $this->belongsTo('App\User');
}
}
Table Votes:
Nome Tipo Nulo
idVoto Primária nao
users_id int(11) nao
projetos_idProjeto int(11) nao
created_at timestamp
updated_at timestamp