2016-07-31 8 views
0

Ich weiß, dass es ein paar andere Beiträge zu diesem Thema gab, aber ich habe ihre Lösungen versucht und sie funktionieren nicht. Ich habe ein Gerätebenutzermodell, und dieses Modell hat einen booleschen Namen :terms_and_conditions. Ich möchte verhindern, dass sich ein Nutzer auf meiner Website anmeldet, es sei denn, er hat diese Nutzungsbedingungen überprüft. Durch Aktivieren des Kontrollkästchens sollte das boolesche Attribut des Benutzers auf "true" gesetzt werden. Mit meinem aktuellen Code kann sich ein Benutzer anmelden, ohne das Kästchen zu aktivieren, und das Aktivieren des Kästchens wirkt sich nicht auf das boolesche Feld aus. Wie kann ich das beheben?Annahme der Geschäftsbedingungen

devise/Anmeldungen/new.html.erb:

<div class="checkbox"> 
    <label> 
    <%= f.check_box :terms_and_conditions %><strong> I accept the terms and conditions<strong> 
    </label> 
</div> 

models/user.rb:

validates_acceptance_of :terms_and_conditions 

Antwort

0

in Modellen/user.rb: validates_presence_of: terms_and_conditions

0

gesetzt validates :terms_of_service, acceptance: true, und sehen, ob das Ihr Problem behebt. Lesen Sie mehr darüber auf Schienen Führungs here

+0

Nein, das nicht funktioniert entweder –

+0

das Problem gefunden. Ich habe die Begriffe "Terms_and_conditions" zu meinem Devise-Parameter-Sanitizer hinzugefügt. Aber jetzt, egal was ich tue, heißt es, dass Bedingungen angenommen werden müssen (selbst wenn es so ist). Es scheint nicht zu registrieren, dass, wenn es aktiviert ist, der Wert wahr –

+0

ja ist, wenn Sie das Gerät verwenden, müssen Sie es auch zulassen. Nun, wenigstens löst du dein Problem. – mrvncaragay

Verwandte Themen