2016-03-24 2 views
1

Ich möchte Benutzern erlauben, bis zu 5 Tags Tag wie ein Firmenname oder Wohltätigkeitsorganisation ihre zugeordneten geben. Wenn ein Benutzer auf dieses Tag klickt, wird es auf eine Seite mit allen Benutzern geleitet, die diesem Tag zugeordnet sind.Verbinden Sie Benutzer mit Tags, die sie erstellen, ohne doppelten Inhalt in Mysql-Datenbank

Beispiel: Wenn jemand CBS eingibt, werden alle mit CBS verknüpften Benutzer angezeigt.

Ich weiß, dass ich einen eindeutigen Index hinzufügen kann, damit Benutzer doppelte Inhalte wie here nicht eingeben können, aber das verhindert, dass Benutzer ein Unternehmen eingeben können, mit dem sie verknüpft sind, wenn es bereits in der Datenbank vorhanden ist.

Ich möchte keine Duplikate in der Datenbank, aber ich möchte den Benutzern die Möglichkeit geben, Firmen auszuwählen, die bereits in der Datenbank vorhanden sind, die von anderen Benutzern gesendet wurde.

Diese Datenbank enthält nur Daten, die von den Benutzern gesendet wurden.

I Larven 5

meiner Datenbank wie folgt aussieht bin mit:

Benutzer

id | Benutzername | E-Mail

Stichworte

id | Tags

Benutzermarkierungen

id | userId | TagId

+1

Ich bin mir nicht sicher, ob ich verstehe, was Sie verlangen, aber wenn Sie Tags.tags als einzigartig festlegen, sollte es Benutzer daran hindern, eine einzugeben Unternehmen, das bereits existiert. – rvbarreto

+1

"Aber erlauben Sie den Benutzern nicht die Wahl" Um zu verdeutlichen: Wollen Sie, dass die Benutzer die Wahl haben? Wenn ja, dann tue ein $ tag = Tag :: wo ('tag', $ input) -> get(); um zu sehen, ob ein Tag mit dieser ID bereits existiert. Wenn dies der Fall ist, weisen Sie diese ID zu. –

+1

Nach meinem Verständnis, Sie wollen Verdoppelung in 'Tags' Tabelle durch die Erstellung von' Tags' Spalte * eindeutig * ** UND ** Sie wollen dann einen eindeutigen Index in 'usertags' Tabelle mit' [userId, tagId] ' Felder. Auf diese Weise vermeiden Sie es, dieselbe Benutzer-Firma-Zuordnung zu duplizieren, anderen Benutzern jedoch die Auswahl derselben Firma zu ermöglichen. – alariva

Antwort

0

Sie die Validate in Anforderungsdatei von Laravel können
Verwenden Einzigartige basierend auf dem Tag (und/oder) Kommentar & Benutzer-ID
Es wird helfen Sie, Daten zu erhalten, was Sie erwarten
beziehen Laravel Dokument auch

Verwandte Themen