This is a Content Management System for a nursery to keep the daily information about their students. This daily information will be referred to as activities.
The app provides a database and web interface for users to:
- Sign up, log in or log out securely as a nursery staff or parent.
- Nursery staff can create, read, update, and delete (CRUD) an activity.
- Parents can read only the personal profile page of their children.
- User inputs are validated for account creation.
Link to my blog post.
Gems you need to install the software:
$ sudo gem install bundler
To install this app onto your local machine:
- Clone this repository with HTTPS
- Open your terminal and change to the local directory where you want to clone your repository and run:
$ git clone + the link copied before.
After checking out the repository, run the following code and automatically a file will be created or updated in your directory: Gemfile.lock with all the gems installed.
$ bundle install
And finally run:
$ rake db:migrate
You can start one of Rack's supported servers using the shotgun command.
Student Data Bank database includes three model classes: User, Activity and Student.
- User: stores user attributes, including:
- Password (Secured with Bcrypt hashing algorithm)
- Nursery_staff, a boolean value to indicate if a user is a nursery staff
- Activity: stores activity attributes, including:
- User_id, to associate Activity to User
- Student_id, to associate Activity to Student
- Morning Snacks
- Afternoon Snacks
- Student: stores student attributes, including:
- User_id, to associate Student to User
- Key person
User has many students and has many activities. Student has many activities and belongs to a User (parent). Activity belongs to a Student and belongs to User.
Bug reports and pull requests are welcome on GitHub at https://github.com/DianaBaRo/student_data_bank. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
- Diana Badas - Initial work - DianaBaRo
The gem is available as open source under the terms of the MIT License.