I want to be able to give codes to potential users in the form of email links (e.g. mysite.com/signup?beta=rapunzel)
When someone clicks on the link, it populates a hidden_field with the value (will just using :params[:beta] work?)
Then before it creates the user it validates by checking against another table where I have different beta code.
Then goes ahead and stores which code or maybe just the beta.id.
Suggestions? A plugin already exists?
Thanks.
When your user hits mysite.com/signup, the action associated with that route will have the value ‘rapunzel’ stored in params[:beta]. You can pass that onto your view by assigning it into an instance variable (@beta), pass it back to your user controller through your hidden field as planned, and compare it there to your table before saving the user object.
Or you could only allow your user to get to the signup page at all if they’re passing in a valid beta code, in which case you won’t need any special form fields: