表单

Odoo 中的表单非常强大。它们与其他应用程序直接集成,可用于多种不同的用途。

在本章中,您将了解如何:

  • 在自定义主题中添加表单。

  • 更改表单的动作。

  • 借助 Bootstrap 变量美化表单。

默认表单

要将表单添加到页面,请复制网站构建器生成的代码并将其粘贴到该页面中。

它应该类似于以下内容。

<form
   action="/website/form/" method="post"
   enctype="multipart/form-data"
   class="o_mark_required"
   data-mark="*" data-pre-fill="true"
   data-success-mode="redirect"
   data-success-page="/contactus-thank-you"
   data-model_name="mail.mail">
   <div class="s_website_form_rows row s_col_no_bgcolor">
         <div class="form-group s_website_form_field col-12 s_website_form_dnone" data-name="Field">
            <!-- Form fields -->
         </div>
   </div>
</form>

操作

表单标签中有一个 data-model_name。它使您可以为表单定义不同的动作。

发送电子邮件(默认使用此动作)。

<form data-model_name="mail.mail">

申请职位。

<form data-model_name="hr.applicant">

创建客户。

<form data-model_name="res.partner">

创建工单。

<form data-model_name="helpdesk.ticket">

创建商机。

<form data-model_name="crm.lead">

创建任务。

<form data-model_name="project.task">

注解

默认动作为 发送电子邮件,但根据数据库中安装的应用,还可以找到其他一些选项,例如:申请职位、创建客户、创建工单、创建商机等。

请注意,其中一些动作可能需要特定的必填字段才能正常使用。为了不遗漏某些要求,我们强烈建议使用网站构建器预设表单代码片段,并复制/粘贴生成的源代码。

成功

通过 data-success-mode 属性定义表单提交后会发生什么。

将用户重定向到 data-success-page 中定义的页面。

<form data-success-mode="redirect" data-success-page="/contactus-thank-you">

显示一条消息(在同一页面上)。

<form data-success-mode="message">

直接在表单标签下方添加成功消息。请始终添加 d-none 类,以确保在表单尚未提交时隐藏成功消息。

<div class="s_website_form_end_message d-none">
   <div class="oe_structure">
      <section class="s_text_block pt64 pb64" data-snippet="s_text_block">
         <div class="container">
            <h2 class="text-center">This is a success!</h2>
         </div>
      </section>
   </div>
</div>