कस्टम मॉड्यूल: एक्सेस अस्वीकृत (ACL समस्या)


12

मैंने एक मॉड्यूल बनाया, और यह पूरी तरह से काम करता है; हालाँकि, मैं एक दीवार मारा। जब मैं व्यवस्थापक के रूप में लॉग इन करता हूं, तो कुछ भी अच्छा होता है। मैंने इसे acl में जोड़ा:

<?xml version="1.0"?>
<config>
    <menu>
        <erp translate="title" module="firtal_deadstock">
            <title>ERP</title>
            <sort_order>99</sort_order>
            <children>
                <stock_management module="firtal_deadstock">
                                <title>Stock Management</title>
                                <children>
                                    <firtal_deadstock>
                                        <title><![CDATA[Firtal Stock Analysis]]></title>
                                        <sort_order>99</sort_order>
                                        <action>adminhtml/deadstock</action>
                                    </firtal_deadstock>
                                </children>
                </stock_management>
            </children>
        </erp>
    </menu>
    <acl>
        <resources> 
            <all>
                <title>Allow Everything</title>
            </all>
            <admin>
                <children>
                    <system>
                        <children>
                            <config>
                                <children>
                                    <firtal_deadstock translate="title">
                                        <title>Firtal Stock Analysis settings</title>
                                        <sort_order>100</sort_order>
                                    </firtal_deadstock>
                                </children>
                            </config>
                        </children>
                    </system>
                    <erp module="firtal_deadstock">
                        <children>
                            <stock_management module="firtal_deadstock">
                                <children>
                                    <firtal_deadstock translate="title" module="firtal_deadstock">
                                        <title>Firtal Stock Analysis</title>
                                    </firtal_deadstock>
                                </children>
                            </stock_management>
                        </children>
                    </erp>
                </children>
            </admin>
        </resources>
    </acl>
</config>  

लेकिन अगर मैं किसी भूमिका की अनुमति देता हूं और उस भूमिका के साथ एक उपयोगकर्ता के रूप में लॉगिन करता हूं, तो वे मेनू बिंदु (कॉन्फ़िगरेशन नहीं, बल्कि वास्तविक मेनू बिंदु) देखते हैं, लेकिन अगर मैं इसे दबाता हूं, तो मुझे एक्सेस अस्वीकृत त्रुटि मिलती है:

यहाँ छवि विवरण दर्ज करें

मुझे किसकी याद आ रही है?

जवाबों:


24

मेरे पास एक कूबड़ है जिसे आपने अपने व्यवस्थापक नियंत्रक में बुलाया है _isAllowed
अगर यह सच है, तो मुझे लगता है कि यह गलत बात है।
इसे ऐसा दिखना चाहिए:

protected function _isAllowed()
{
    return Mage::getSingleton('admin/session')->isAllowed('erp/stock_management/firtal_deadstock');  
    //or at least
    //return Mage::getSingleton('admin/session')->isAllowed('erp/stock_management');  

}

ओह! वह यह था। मैंने वास्तव में _isAllowed () जोड़ने की कोशिश की, लेकिन इससे मुझे 503 मिला। मैं एक लाइव सर्वर पर काम कर रहा था, इसलिए मैं अपवाद डेटा नहीं देख सका। जाहिर है कि यह इसलिए था क्योंकि मैं इसे भूल गया था क्योंकि मैं भूल गया था कि मैंने इसे कक्षा के बीच में घोषित किया था। एक गुच्छा धन्यवाद, एक शानदार सप्ताहांत है!
डेनेकर

या आप यह भी लिख सकते हैं: संरक्षित फ़ंक्शन _isAllowed () {वापसी सही; }
एंडी इरावन

2
लेकिन वह इसे हर एडमिन के लिए उपलब्ध कराएगा। भले ही उसकी पहुँच उस तक क्यों न हो।
मेरियस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.