2014-06-25 5 views
9

मैं अकड़ उपयोग कर रहा हूँ मेरी RESTApi प्रदर्शित करने के लिए होने के लिए प्राप्त करने के लिए, एक एपीआई के एक पैरामीटर इनपुट के रूप में स्ट्रिंग लेता है और यह enum मूल्य में बदलने का। वहाँ एक पाठ इनपुट क्षेत्र के बजाय स्वैगर यूआई पर एक ड्रॉप-डाउन मेनू प्रदर्शित करने के लिए इतना है कि उपयोगकर्ताओं को केवल enum मूल्य के भीतर स्ट्रिंग मान चुन सकते हैं कोई तरीका है।कैसे स्वैगर यूआई के पैरामीटर ड्रापडाउन मेनू के बजाय पाठ इनपुट

उत्तर

2

एनोटेशन में allowableValues का उपयोग करना महत्वपूर्ण है।

डेमो परिणाम दिखा रहा है:

http://petstore.swagger.io/#!/pet/findPetsByStatus

बाहर चेक pet/findByStatus, यह एक लटकती नहीं है, लेकिन इनपुट बहु-चयन बॉक्स में सीमित है।

+3

दुर्भाग्य से उन लिंक को अभी मर चुके हैं। – aradil

4

आप अकड़ के कोड निम्न का उपयोग कर लटकती प्रदर्शित कर सकते हैं। आप enum उपयोग करना होगा। उदा। अगर आप इनपुट के रूप में लिंग ले जाना चाहते हैं तो वहाँ तीन संभावित मान

  • पुरुष, महिला, अन्य किया जा सकता है
-name: "gender" 
      in: "query" 
      type: "string" 
      enum: [ "male", "female", "other"] 
      description: "Enter user gender here." 
      required: true 
+0

कैसे ड्रापडाउन मेनू के बजाय पाठ इनपुट होने की स्वैगर यूआई के प्रमुख पाने के लिए –

2

आप सीधे एक के रूप में स्ट्रिंग पैरामीटर के बजाय enum उपयोग कर सकते हैं API पैरामीटर।

@RequestMapping(value = "/test", method = RequestMethod.POST) 
public void test(EnumTest enum) { 
    // body 
} 

EnumTest.java

public enum EnumTest { 

    One("One"), 
    Two("Two"); 

    private String str; 

    EnumTest(String str){ 
     this.str = str; 
    } 

    public String getStr() { 
     return str; 
    } 

}

संबंधित मुद्दे