यह पहली बार है जब मैं किसी एप्लिकेशन में डेटा वापस करने के लिए Laravel 5.8 में Api संसाधन का उपयोग कर रहा हूं। एक User मॉडल में उपयोगकर्ता के बारे में कुछ सार्वजनिक और निजी जानकारी होती है। एक उपयोगकर्ता को अपनी सभी जानकारी (जैसे नाम, फोन नंबर, ईमेल, ...) देखने की अनुमति है, लेकिन अन्य को केवल नाम और उपयोगकर्ता नाम देखने की अनुमति है। मैं इसे एपीआई संसाधन में कैसे संभाल सकता हूं?

अग्रिम में धन्यवाद।

1
M a m a D 19 अक्टूबर 2019, 21:59

1 उत्तर

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

आप सशर्त विशेषताओं का इस्तेमाल कर सकते हैं

public function toArray($request)
{
    return [
        'id' => $this->id,
        'name' => $this->name,
        'username' => $this->username,
        'email' => $this->when(auth()->id() == $this->id, 'email'),
        'phone_number' => $this->when(auth()->id() == $this->id, 'phone'),
        'created_at' => $this->created_at,
        'updated_at' => $this->updated_at,
    ];
}

यह ईमेल और फोन नंबर तभी लौटाएगा जब प्रमाणीकृत उपयोगकर्ता अपनी जानकारी देखने की कोशिश कर रहा हो

3
Salim Djerbouh 8 मार्च 2021, 14:55