Вопрос

Это игрушечный проект, над которым я сейчас работаю.

Мое приложение содержит вопросы с несколькими вариантами ответов.

URL-адрес вопроса представлен в следующем формате, с GET & POST сопоставление с различными действиями в контроллере вопросов.

GET:   url.com/questions/:category/:difficulty      => 'ask'
POST:  url.com/questions/:category/:difficulty      => 'answer'

Мне интересно, стоит ли переделать это в спокойный стиль.Я знаю, что мне нужно было бы представить ответы в качестве ресурса, но я изо всех сил пытаюсь придумать URL-адрес, который выглядел бы естественным для ответа на этот вопрос.

Будет ли полезен редизайн?Как бы вы поступили по поводу структурирования URL-адресов?

Это было полезно?

Решение

Я думаю, было бы лучше, если бы вы нанесли на карту:

POST url.com/:category/:difficulty/questions => ask question
GET  url.com/questions                       => list all questions
GET  url.com/:category/:difficulty/questions => list questions for category and difficulty
GET  url.com/questions/:id                   => show question
POST url.com/questions/:id                   => add answer
PUT  url.com/questions/:id                   => edit question
PUT  url.com/questions/:question_id/:id      => edit answer with id :id
GET  url.com/questions/:question_id/:id      => show question with highlighted answer (like it is here on SO)

Если бы вы сделали:

POST:  url.com/questions/:category/:difficulty      => 'answer'

Тогда у вас мог бы быть только один вопрос с указанной категорией и сложностью.

Другие советы

Вам не обязательно рассматривать ответы как отдельный ресурс:вы могли бы рассматривать ответ как элемент вопроса.На самом деле, я думаю, что так было бы лучше - ответ на самом деле ничего не стоит, если он не привязан к вопросу.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top