从输入到数据库的十月CMS

Posted

技术标签:

【中文标题】从输入到数据库的十月CMS【英文标题】:OctoberCMS from input to databse 【发布时间】:2019-09-27 06:23:40 【问题描述】:

谁能告诉我如何将我的联系人输入或任何其他内容保存到我的数据库中?十月cms 所以我只希望当用户在输入文件中键入内容并单击提交或其他内容时,将其保存在我创建的表中的数据库中?

【问题讨论】:

查看此线程 - ***.com/questions/43342871/…。希望这会有所帮助。 【参考方案1】:

为此你需要创建插件

https://octobercms.com/docs/plugin/registration

或者你可以使用plugin builder 来构建插件,基本上它需要创建数据库表。 [https://octobercms.com/plugin/rainlab-builder]

然后您需要为前端创建cms page,您可以在其中为文本框和提交按钮添加标记。

标记部分

<!-- AJAX enabled form -->
<form data-request="onSubmitHandle" data-request-flash>
    <input type="text" name="email" />
    <button type="submit">Submit Fire Ajax</button>
</form>

代码部分

function onSubmitHandle()

    $validator = \Validator::make(        
        post(),
        ['email' => 'required']
    );

    if ($validator->fails()) 
        \Flash::error('Email Needed.');
    
    else 
        $model = new \Author\PluginName\Models\MyModel;
        $model->email = post('email');
        $model->save();    
        \Flash::success('data saved.');
    


此代码将检查是否输入了电子邮件,它将数据保存到model(database),如果电子邮件未通过,则显示成功消息,它将显示错误email needed.

要使 Flash 消息正常工作,请同时添加 js 库 [https://octobercms.com/docs/ajax/introduction] 您可以按照本指南将它们添加到您的布局中。

如果您有任何疑问,请发表评论。

【讨论】:

好的,所以我使用构建器、数据库表和联系页面创建了我的插件,并在标记中使用表单并在代码中提交。接下来我该怎么办?我是OctoberCMS 的新手,我知道的不多。请帮忙。 在页面中将有 2 个部分代码和标记,您需要在那里添加代码,您需要根据需要进行更改。 [这需要php知识]

以上是关于从输入到数据库的十月CMS的主要内容,如果未能解决你的问题,请参考以下文章

十月CMS发布表格

会话数据未保存在插件控制器十月 CMS 中

十月 CMS- 语言选择器组件 Twig

十月 CMS:AJAX 表单

十月 CMS 组件加载布局

如何仅在组件类或插件上创建十月 CMS 上的中间件?