表单

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

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

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

  • 更改表单的操作。

  • 通过 Bootstrap 变量美化表单。

默认表单

要将表单添加到页面,请复制并粘贴 Website Builder 在页面中生成的代码。

它应该类似于以下内容。

<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">

注解

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

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

成功

通过 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>