سؤال

هذا مشروع لعبة أعمل عليه في الوقت الحالي.

يحتوي تطبيقي على أسئلة مع إجابات الاختيار من متعدد.

عنوان 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