Well, I’m getting married in a exactly three weeks from today (June 4, 2016) and for my wedding RSVP I decided to create a RSVP wedding app in Ruby on Rails. App is freely available in GitHub. Link to repo at the end…
This application tracks RSVPS for a wedding. The RSPV form consists of 6 fields
- Number of Attendees
- Accept or Decline
- Invitation Code
Out of these 6 fields, only Name, Number of Attendees, Accept/Decline and Invitation Code are required.
Once the user submits the form, the application validates the fields and if everything is correct, then displays a little blurb about the couple.
On the back end side, the administrator can see the guest list, search for a particular name in the guest list, delete an entry in the guest list and download the entire guest list as a CSV file.
In order gain access to the back end, just append /signup at the end of the URL to create an account and to login just append /login at the end of the URL. After the administrator has logged in successfully, a top menu will appear where one can navigate to the Guest List, back to the RSVP page, Search the guest list, Edit their profile, and Log out from the application.
To handle search, I am using searchkick gem and in order to perform a search in localhost you must have elasticsearch installed have its server running.
In console type:
If you get an error saying you need to re index Rsvp (Rsvp.reindex), in console run the following:
$ rake searchkick:reindex CLASS=Rsvp $ rake db:migrate
When looking at the guest list, you can sort by Name, Number of Attendees, Accept and Date columns.
The application has a reCAPTCHA button to fight against bots.
Initially is disabled, if you want it just uncomment reCAPTCHA code in rsvps_controller.rb and new.html.erb
The invitation code is a static code provided in the invitation cards to prevent random people from submitting the form since the RSVP form is open to the web 🙂
I’m using dotenv for reCAPTCHA keys and RSVP Code. Refer to its documentation for more info about installing and deployment.
Guest list will not sort after a search.
After cloning make sure you set up dotenv gem before running the application and get demo keys for reCAPTCHA (if you enable it). If not the application will throw an error when submitting an RSVP.