magento custom Gateaway payment redirect是404

时间:2011-04-21 04:01:59

标签: magento

我为asurepay做了一个自定义支付门户。它就像PayPal标准支付一样。在我的订单,它将重定向到我的模块的重定向页面,这是问题。它给了我一个404页面。

这是我的文件结构。 (如果你需要学习)

- app/
  - code/
    - local/
      - Asurepay/
        - Custompay/
          - Model/
            - Asure.php
          - Block/
            - Asure/
              -Redirect.php
            - Form.php
            - Info.php
          - etc/
            - config.xml
            - system.xml
  - design/
    - adminhtml/
      - ......
    - frontend/
      - default/
        - default/
          - template/
            - custompay/
              - asurepay/
                - redirect.phtml
              - form.phtml
  - etc/
    - modules/
      - Asurepay_Custompay.xml

这是我的Model / Asure重定向代码:

public function getOrderPlaceRedirectUrl() {
   return Mage::getUrl('custompay/asurepay/redirect', array('_secure' => true));
}

这是我的config.xml请求

<config>
    <modules>
        <Asurepay_Custompay>
            <version>0.1.0</version>
        </Asurepay_Custompay>
    </modules>
    <global>
        <blocks>
            <custompay>
                <class>Asurepay_Custompay_Block</class>
            </custompay>
        </blocks>
        <models>
            <custompay>
                <class>Asurepay_Custompay_Model</class>
            </custompay>
        </models>
        <resources>
            <custompay_setup>
                <setup>
                    <module>Asurepay_Custompay</module>
                </setup>
                <connection>
                    <use>core_setup</use>
                </connection>
            </custompay_setup>
            <custompay_write>
                <connection>
                    <use>core_write</use>
                </connection>
            </custompay_write>
            <custompay_read>
                <connection>
                    <use>core_read</use>
                </connection>
            </custompay_read>
        </resources>
    </global>
    <default>
        <payment>
            <custompay>
                <active>1</active>
                <model>custompay/asure</model>
                <order_status>pending</order_status>
                <title>AsurePay</title>
                <gateurl>https://www.paymentUrl.com/payment/</gateurl>
                <successurl>{{base_url}}</successurl>
                <redimsg>You will be redirected to the payment website when you place an order.</redimsg>
                <allowspecific>0</allowspecific>
            </custompay>
        </payment>
    </default>
</config>

显然,重定向网址为:

www.mydomain.com/custompay/asurepay/redirect/

此网址为我提供了404页。

如何告诉magento创建重定向页面,使其不是404,或者如何通过控制器创建www.mydomain.com/custompay/asurepay/redirect/页面。?

问我是否需要更多信息。 :)非常感谢。

1 个答案:

答案 0 :(得分:1)

你需要为你的扩展定义前端路由器,也可能还有布局引用,问题在于你没有为前端定义控制器访问

<frontend>
        <routers>
            <custompay>
                <use>standard</use>
                <args>
                    <module>Asurepay_Custompay</module>
                    <frontName>custompay</frontName>
                </args>
            </custompay>
        </routers>
</frontend>