2016-02-11 13 views
7

के साथ एक दृश्य सहायक के रूप में वर्तमान यूआरएल कैसे प्राप्त करें, मैं अपने दृश्य में एक लिंक बनाना चाहता हूं जो उसी पृष्ठ को संदर्भित करता है जैसे कि इसे रखा गया है। और मैं इसके साथ एक पैरामीटर देने में सक्षम होना चाहता हूँ।लैरवेल: पैरामीटर

उदाहरण के लिए मैं भाषाएं बदलना चाहता हूं। मैं

domain.com/{lang}/xyz 

की तरह एक मार्ग है और मेरे विचार में मैं जैसे

<a href="{{ URL::action(this, ['lang' => 'en']) }}">EN</a> 

कुछ करने के लिए तो मैं आसानी से पृष्ठ पुनः लोड कर सकते हैं, लेकिन सिर्फ "लैंग" पैरामीटर को बदलने चाहते हैं।

उम्मीद है कि यह समझ में आता है। कृपया मेरी मदद करने की कोशिश करें।

(एक और पक्ष सवाल: वहाँ कोई ressources हैं Laravel में सभी दृश्य सहायकों जहां मुझे पता है जो viewhelpers उपलब्ध हैं की एक सूची जैसे?)

उत्तर

20

उपयोग laravel सहायक विधि एक दृश्य में उपयोग करने के लिए:

url()->current() 

यह वर्तमान URL प्राप्त करेगा। यदि आपको वर्तमान मार्ग का नाम प्राप्त करने की आवश्यकता है,

Route::current()->getName() 

अब आप अपना स्वयं का नया URL बनाने के लिए इस रूट नाम का उपयोग कर सकते हैं।

जैसे:

<a href="{{ URL::action(Route::currentRouteName(), ['lang' => 'en']) }}">EN</a> 

आपका मार्ग परिभाषा हो सकता है कुछ की तरह:

Route::get('/{lang}/about/', ['as'=>'about_us', 'uses'=>'[email protected]']) 

यह आपको वर्तमान URL प्रदान करेगा।

लेकिन आपके मामले में, यह बहु भाषा के लिए इस पैकेज उपयोग करना बेहतर है: https://github.com/mcamara/laravel-localization

यह बहुत सरल और प्रयोग करने में आसान है।

+0

मेरे प्रश्न का उत्तर नहीं दे रहा है। – humpdi

+0

यूआरएल() -> वर्तमान() मुझे अपने EN के अंदर इसका उपयोग कैसे करना चाहिए और इसके साथ {lang} पैरामीटर देना चाहिए? – humpdi

+0

अद्यतन उत्तर की जांच करें। –