जब मेरे पास इस तरह से अनुच्छेद डालने के लिए JSON है, तो एक रजिस्टर सम्मिलित करना बहुत आसान है:

--JSON डालने के लिए--

{
    "title" : "a title",
    "content" : "some content",
    "user_id" : 3
}

इसे छोटा करने के लिए, मैं नियंत्रक की स्टोर विधि को लक्षित करने वाला मार्ग बनाता हूं और कुछ सरल के लिए जाता हूं जैसे:

--अनुच्छेद नियंत्रक--

public function store(Request $request)
{
    $article = Article::create($request->all());
    return response()->json($article, 201);
}

लेकिन, अगर मेरे पास कुछ JSON: API इस तरह अनुपालन कर रहा है तो स्टोर करने के लिए डेटा डालने का सही तरीका क्या है ?:

{
    "data": 
        {
            "type": "articles",
            "attributes": {
                "title": "a title",
                "content" : "some content",
                "user_id" : 3
            }
        }
}

सही तरीका क्या है?

0
arlokan 27 जिंदा 2021, 14:48
जब JSON डेटा रूट मैनेजर के पास आता है, तो क्या आप तय करते हैं कि JSON डेटा के प्रकार के आधार पर यह अनुरोध किस नियंत्रक को निर्देशित किया जाए?
 – 
Ahmad Karimi
27 जिंदा 2021, 14:58
@ अहमद करीमी, वास्तव में नहीं। इनपुट हमेशा वही रहने वाला है, इसलिए इसे हमेशा एक ही नियंत्रक को निर्देशित किया जाता है। मुझे नहीं पता कि क्या मैंने आपके प्रश्न को गलत समझा (मैं लारवेल के लिए बहुत नया हूं)
 – 
arlokan
27 जिंदा 2021, 15:28
आप अच्छी तरह समझ गए। आपकी टिप्पणी के आधार पर, मेरा सुझाव है कि आप कुछ हिस्सों को हटाकर और केवल इनपुट भेजकर जेसन डेटा पास करें, इस तरह आप अपने नियंत्रक में डेटा को पहले से ही कोशिश कर सकते हैं। JSON डेटा हो सकता है: {"शीर्षक": "एक शीर्षक", "सामग्री": "कुछ सामग्री", "user_id": 3}
 – 
Ahmad Karimi
27 जिंदा 2021, 16:22

1 उत्तर

सबसे बढ़िया उत्तर

मुझे विश्वास नहीं हो रहा है कि यह इतना आसान था,

मैंने अभी इसे बदल दिया है:

    $article = Article::create($request->all());
    return response()->json($article, 201);

इसके लिए:

    $article = Article::create($request->data['attributes']);
    return response()->json($article, 201);

और बस

0
arlokan 27 जिंदा 2021, 17:21