- Name: Chan Kok Jing, Daryl
- Matriculation number: A0183998B
- Mid-assignment Write-up
- Final Write-up
- Heroku Deployment
- PostgreSQL
- Ruby
- Node.js
- Clone the repository
bundle && yarnrails db:create && rails db:migrate- Start two terminal sessions -
rails sfor the Rails serverbin/webpack-dev-serverfor the webpack server, supports HMR
Request
GET /api/all
Response
200 OK
{
"tasks": [
{
"id": 1,
"title": "Eat breakfast",
"done": true,
"created_at": "2019-01-21T03:42:40.591Z",
"updated_at": "2019-01-21T03:42:41.631Z",
"tag_id": 1
},
{
"id": 2,
"title": "Eat lunch",
"done": false,
"created_at": "2019-01-21T03:42:47.966Z",
"updated_at": "2019-01-21T03:42:47.966Z",
"tag_id": 1
}
],
"tags": [
{
"id": 1,
"title": "meals",
"created_at": "2019-01-21T03:37:02.839Z",
"updated_at": "2019-01-21T03:37:02.839Z"
},
{
"id": 2,
"title": "homework",
"created_at": "2019-01-21T03:44:37.477Z",
"updated_at": "2019-01-21T03:44:37.477Z"
}
]
}Request
GET /api/tasks
Response
200 OK
[
{
"id": 1,
"title": "Eat breakfast",
"done": true,
"created_at": "2019-01-21T03:42:40.591Z",
"updated_at": "2019-01-21T03:42:41.631Z",
"tag_id": 1
},
{
"id": 2,
"title": "Eat lunch",
"done": false,
"created_at": "2019-01-21T03:42:47.966Z",
"updated_at": "2019-01-21T03:42:47.966Z",
"tag_id": 1
}
]Request
POST /api/tasks
{
"task": {
"title": "Eat breakfast",
"done": false,
"tag_id": 1
}
}Response
201 Created
{
"id": 1,
"title": "Eat breakfast",
"done": false,
"created_at": "2019-01-21T03:37:26.166Z",
"updated_at": "2019-01-21T03:37:26.166Z",
"tag_id": 1
}Request
GET /api/tasks/:id
Response
200 OK
{
"id": 1,
"title": "Eat breakfast",
"done": false,
"created_at": "2019-01-21T03:37:26.166Z",
"updated_at": "2019-01-21T03:37:26.166Z",
"tag_id": 1
}Request
PUT /api/tasks/:id
{
"task": {
"id": 1,
"title": "Eat lunch",
"done": false,
"created_at": "2019-01-21T03:37:26.166Z",
"updated_at": "2019-01-21T03:37:26.166Z",
"tag_id": 1
}
}Response
200 OK
{
"id": 1,
"title": "Eat lunch",
"done": false,
"tag_id": 1,
"created_at": "2019-01-21T03:37:26.166Z",
"updated_at": "2019-01-21T03:39:32.939Z"
}Request
DELETE /api/tasks/:id
Response
200 OKRequest
GET /api/tags
Response
200 OK
[
{
"id": 1,
"title": "meals",
"created_at": "2019-01-21T03:37:02.839Z",
"updated_at": "2019-01-21T03:37:02.839Z"
},
{
"id": 2,
"title": "homework",
"created_at": "2019-01-21T03:44:37.477Z",
"updated_at": "2019-01-21T03:44:37.477Z"
}
]Request
POST /api/tags
{
"tag": {
"title": "homework"
}
}Response
201 Created
{
"id": 2,
"title": "homework",
"created_at": "2019-01-21T03:44:37.477Z",
"updated_at": "2019-01-21T03:44:37.477Z"
}Request
DELETE /api/tags/:id
Response
200 OK