0
votes

Comment insérer une valeur qui ne se répète pas dans Laravel

Comment puis-je insérer une valeur qui ne se répète pas? Je travaille sur un système de conservation de l'heure, le problème est que lorsque j'ajoute du temps et ajouter du temps à nouveau le même jour, le temps est répété. Comment puis-je insérer du temps qui ne se répète pas même lorsque j'ajouterai de nouveau le temps? Merci beaucoup ici est mon code. Est-il possible de faire ça?

Mes données actuelles sont ceci et ma sortie finale doit être que Employee_no 10310 ne doit être que l'une et ne pas répéter des données. Il ne doit pas répéter et ne pas insérer ID 3 .

 Entrez la description de l'image ici

contrôleur xxx

vue xxx

table de base de données xxx


6 commentaires

Pourriez-vous mettre à jour la question avec la valeur actuellement insérée et votre valeur attendue?


@Eisenheim, monsieur, j'ai édité ma question pourriez-vous le voir s'il vous plaît? Merci


Quelle combinaison doit être unique: employé_no + date_today ? Ou aussi avec time_in / time_out ?


@HCK OUI SIR Vous avez raison! , j'ai aussi besoin du temps_in et du temps_out car lorsque l'utilisateur définit l'heure à laquelle elle ne doit pas être double aussi, vous avez raison monsieur.


"Time in" est différent pour la ligne ID 1 et ID de la rangée 3. Lequel vous devez conserver? La ligne 3 a-t-elle un mauvais moment dans les données?


La solution pourrait être updateocreate () méthode. Étudiez ce sujet, c'est dans le Docs .


3 Réponses :


0
votes

Dans votre migration, mettez à jour ce xxx

à ceci: xxx


3 commentaires

Et si l'administrateur saisira le temps le lendemain? alors empoyee_no ne sera plus jamais entré à nouveau?


Mes données actuelles est la suivante et ma sortie finale doit être que l'employé_no 10310 ne doit être que l'une et ne pas répéter des données. Il ne faut pas répéter et ne pas insérer ID 3. . Je pensais que tu voulais que des employés similaires soient évités. 10310 ne sera plus jamais inséré. Mais autre employé_no sera


Ohh monsieur, il doit vous avoir confondu, désolé pour ça .. Ce que je voulais dire, c'est que le jour est mis à jour chaque jour automatiquement afin que l'administrateur a besoin de saisir du temps chaque jour. C'est ainsi que ce que je voulais dire pour cela et aussi pour l'employé nécessaire pour être une seule valeur et ne pas répéter :)



0
votes

Je suis à peu près sûr que vous pourriez améliorer cela dans un autre aspect de votre site, mais étant donné que nous ne connaissons pas votre cas d'utilisation. Cela devrait faire le truc: xxx

}


1 commentaires

Monsieur je ne suis pas à peu près sûr pourquoi il n'a pas fonctionné mais pourrions-nous vérifier notre code sur votre et à ma fin? Merci beaucoup monsieur.



0
votes

Vous pouvez utiliser FirstNouvez ()

$employeeTimeSet = Schedule::firstOrNew(['employee_no' => $request->input('hidEmployeeno'), 'date_today' => $request->input('dateToday')]);
$employeeTimeSet->last_name = $request->input('hidEmployeeLast');
$employeeTimeSet->first_name = $request->input('hidEmployeeFirst');
$employeeTimeSet->time_in = $request->input('timeIn');
$employeeTimeSet->time_out = $request->input('timeOut');
$employeeTimeSet->save();


0 commentaires