Ich versuche, eine Schaltfläche zu deaktivieren, wenn ich einen Benutzer in meiner Benutzertabelle registriert haben, aber mit der Methode, die ich benutze, inaktiviert nicht die Schaltfläche, die ich inaktiv sein möchte inaktiviert es für alle Register.Wenn Datensatz existiert Schaltfläche deaktiviert in Laravel 5.4
Das ist meine Benutzermigration:
public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->engine = 'InnoDB';
$table->increments('id');
$table->integer('id_employee')->unsigned();
$table->string('username')->unique();//Cedula
$table->string('name')->nullable();
$table->string('password', 60)->nullable();
$table->string('email', 60)->nullable();
$table->rememberToken();
$table->timestamps();
$table->foreign('id_employee')->references('id')->on('employees')
->onUpdate('cascade')->onDelete('cascade');
});
}
Und das ist mein Benutzermodell:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Employee extends Model
{
protected $table = 'employees';
protected $fillable = ['doc_number', 'user_code', 'name', 'last_name', 'settlement', 'address', 'city' , 'zip_code', 'email', 'phone', 'position', 'departments_id', 'hire_date'];
protected $guarded = ['id'];
public function departments()
{
return $this->belongsTo('App\Department');
}
public function user()
{
return $this->hasOne('App\User');
}
//Query para buscador
public function scopeName($query, $name)
{
$query->leftJoin('departments','employees.departments_id','=','departments.id')
->select('employees.*','departments.id as deptID','departments.name as department')
->where('employees.name','like',"%$name%")
->orWhere('employees.last_name','like',"%$name%")
->orWhere('employees.position','like',"%$name%")
->orWhere('employees.email','like',"%$name%")
->orWhere('employees.doc_number','like',"%$name%")
->orWhere('departments.name','like',"%$name%");
}
}
Dieser Controller meines Index-Methode ist:
public function index(Request $request)
{
$employees = Employee::name($request->get('criteria'))->orderBy('name','asc')->paginate(6);
$departments = Department::orderBy('id', 'desc')->pluck('name', 'id');
$users = User::orderBy('id', 'desc')->pluck('username', 'id');
return view('employees.index', compact('employees', 'departments', 'users'))
->with('i', ($request->input('page', 1) - 1) * 6);
}
Und das ist meine Klinge Ansicht mit Knopf:
<td>
<div class="btn-group">
@if(count($users) === 0)
<a href="{{ URL::route('padron.create', $employee->id) }}" type="submit" class="btn btn-success btn-sm" data-toggle="tooltip" rel="tooltip" data-placement="top" title="Confirmar votante">Confirmar</a>
@else
<a type="submit" class="btn btn-success btn-sm" data-toggle="tooltip" rel="tooltip" data-placement="top" disabled="disabled" title="Confirmar votante">Confirmar</a>
@endif
</div>
</td>
Ihr Zweck nicht der Fall ist scheint klar. Möchten Sie ein Formular für einen angemeldeten Benutzer deaktivieren? Und aktivieren Sie es nur für nicht registrierte/nicht angemeldete Benutzer? –
Ich möchte die Schaltfläche deaktivieren, wenn ich einen dieser Datensätze in meiner Benutzertabelle habe. –
Überprüfen Sie mit 'auth()' oder 'Auth', was Sie wollen, und vergleichen Sie es mit den Daten in der Benutzertabelle. – GabMic