首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Magento -在审阅表单中添加自定义字段

Magento -在审阅表单中添加自定义字段
EN

Stack Overflow用户
提问于 2012-01-18 11:18:42
回答 1查看 2.9K关注 0票数 0

我期待创建一个自定义模块,其中添加了一个输入字段,以收集‘电子邮件Id’的审查形式,但只为客人客户。

我知道这可能需要重写一些核心模块,如'/code/core/Mage/Review/Model/Mysql4/Review/Product/Collection.php‘和'/code/core/Mage/Review/Model/Mysql4/Review.php’,并编辑块文件和.phtml文件来包含“email”文本字段。

此外,还需要将新字段添加到数据库表中。这个领域应该强制地为客人服务。注册客户不需要在发布评论时输入他们的电子邮件id。

因此,我不知道该如何做以下工作:1)哪些核心文件需要精确重写?2)如何在现有数据库表中添加这个新字段,以便进行“审查”,以便以后的升级不会过写?3)如何确保该字段被来宾客户强制填充?(如果注册客户不填写的话,也可以)

拜托,任何帮助都是非常感谢的。谢谢。

这就是我迄今为止所做的

代码语言:javascript
复制
CM
 Review
  Block
     Review
       Edit
         Form.php
  etc
    config.xml
  Helper
    Data.php
  Model
    Resource
      Review.php
      Review
        Product
          Collection.php

这是我的config.xml的内容

代码语言:javascript
复制
 <?xml version="1.0"?>
 <config>
<modules>
    <CM_Review>
        <version>0.0.1</version>
    </CM_Review>
</modules>
<frontend>
    <routers>
        <review>
            <use>standard</use>
            <args>
                <module>CM_Review</module>
                <frontName>Review</frontName>
            </args>
        </review>
    </routers>
</frontend>    
<global>
    <blocks>
        <adminhtml>
            <rewrite>
            <review_edit_form>CM_Review_Block_Review_Edit_Form</review_edit_form>
            </rewrite>
        </adminhtml>
    </blocks>
    <helpers>
        <review>
       <rewrite>
                <class>CM_Review_Helper</class>
    </rewrite>
        </review>
         </helpers>  
    <models>
          <review>
          <rewrite>
        <resource_review>CM_Review_Model_Resource_Review</resource_review>
                    <resource_review_product_collection>
                      CM_Review_Model_Resource_Review_Product_Collection
                    </resource_review_product_collection>
         </rewrite>
         </review>
          </models>
</global>

我重写的每个核心文件都是从原始的审查模型文件和Adminhtml/Block/Review Edit文件中扩展出来的,我在代码中添加了额外的“电子邮件”字段,复制粘贴了相同的代码。

现在,我已经在数据库中手动添加了该字段,并在base/defaut/review/form.phtml中添加了输入字段,但它仍然没有将数据保存在表中。

但是,如果我试图通过编辑核心文件来添加这个字段,那么它可以保存客户的电子邮件id,并且工作非常好。

不知道我做错了什么吗?

EN

回答 1

Stack Overflow用户

发布于 2012-12-04 11:15:19

请看这里的答案:

Add custom fields in review form

您应该使用被选中的一个,而不是标记为答案的那个;它修改核心文件,这从来不是一个好主意。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8909185

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档