-
Notifications
You must be signed in to change notification settings - Fork 51
Fire-Kalki-Task-List #37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
beccaelenzil
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Task List
Major Learning Goals/Code Review
| Criteria | yes/no, and optionally any details/lines of code to reference |
|---|---|
| At least 6 commits with meaningful commit messages | ✔️ |
| Routes follow RESTful conventions | ✔️ |
Uses named routes (like _path) |
✔️ |
| Creates Models and migrations | ✔️ |
| Creates styled views | ✔️ Nice styles! |
| Handles errors like nonexistant tasks | ✔️ |
Uses form_with to render forms in Rails |
✔️ |
Functional Requirements/Manual Testing
| Functional Requirement | yes/no |
|---|---|
| Successfully handles index & show | ✔️ |
| index & show tests pass | ✔️ |
| Successfully handles: New, Create | ✔️ |
| New, Create tests pass | ✔️ |
| Successfully handles: Edit, Update | ✔️ |
| Edit, Update tests pass with valid & invalid task ids | ✔️ |
| Successfully handles: Destroy, Task Complete | Note that when a task is created the view displays "mark incomplete" |
| Tests for Destroy & Task Complete include tests for valid and invalid task ids | ✔️ |
Overall Feedback
Great work on this project! You've gone above and beyond to research new techniques (controller filters) and create helper method. It is clear that the learning goals around partial views, strong params, and applying styles to a rails app were met. I've left a few inline comments for you to review. Keep up the hard work!
| Overall Feedback | Criteria | yes/no |
|---|---|---|
| Green (Meets/Exceeds Standards) | 5+ in Code Review && 6+ in Functional Requirements | ✔️ |
| Yellow (Approaches Standards) | 3+ in Code Review && 5+ in Functional Requirements, or the instructor judges that this project needs special attention | |
| Red (Not at Standard) | 0-2 in Code Review or 0-4 in Functional Reqs, or assignment is breaking/doesn’t run with less than 5 minutes of debugging, or the instructor judges that this project needs special attention |
Code Style Bonus Awards
Was the code particularly impressive in code style for any of these reasons (or more...?)
| Quality | Yes? |
|---|---|
| Perfect Indentation | ✅ |
| Elegant/Clever | ✅ |
| Descriptive/Readable | ✅ |
|
|
||
| new_task = Task.find_by(name: task_hash[:task][:name]) | ||
|
|
||
| pp Task.all |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remember to remove printing from your test to add clarity to the test output.
| @@ -0,0 +1,21 @@ | |||
| <%= form_with model: @task, class: 'task-form' do |f| %> | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good use of a partial view.
| <%= f.label :description %> | ||
| <%= f.text_field :description %> </br> | ||
|
|
||
| <%= f.label :completed_at %> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note that because complete_at is entered when a task is created, a new task is already marked as complete and the button for mark_incomplete appears. This creates a bit of confusion for the user. Consider a design that doesn't have the user make an entry completed_at in the form.
| <button><%= link_to "Edit", edit_task_path(task)%></button> | ||
| <button><%= link_to "Delete", task_path(task.id), method: :delete, data: {confirm: "Are you sure?"}%></button> | ||
|
|
||
| <% if task.completed_at == nil %> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice use of a conditional in a view. Consider using a ternary operator.
| end | ||
| end | ||
|
|
||
| def complete |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Consider how making two separate methods, for instance mark_complete and mark_incomplete would make this action idempotent.
|
|
||
| private | ||
|
|
||
| def find_task |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good use of a helper method.
| @@ -0,0 +1,95 @@ | |||
| class TasksController < ApplicationController | |||
|
|
|||
| before_action :find_task, except: [:index, :create] | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice use of controller filters!
Task List
Congratulations! You're submitting your assignment!
Comprehension Questions