public function addContact()
{
if (!$this->validate()) {
return null;
}
$model = new ContactForm();
foreach (['name', 'email', 'subject', 'body'] as $property) {
$model->$property = $this->$property;
}
return $model->save();
}
我得到这个错误:
正在调用未知方法:前端\模型\联系人表单::保存()
var_dump工作正常。
保存方法返回此错误[save方法
.
这是完整的模型规则:rules model,这是模型代码的其余部分:有人能告诉我我哪里错了吗?
1条答案
按热度按时间zphenhs41#
正如 Sfili_81 已经 提到 的 , 你 必须 扩展 ActiveRecord 而 不是 Model 才 能 调用 save 方法 , 但是 只有 当 你 想 把 数据 保存 到 数据 库 时 , 这 才 有 意义 。
您 可以 使用 yii2 - app-basic 的 默认 逻辑 , 将 ContactForm 提交 的 数据 通过 email 发送 给 已 配置 的 管理 员 , 只需 调用 ContactForm 的 contact 方法 即可 。
中 的 每 一 个
如果 你 想 收到 真正 的 邮件 , 你 还 必须 将 邮件 程序 组件 的
useFileTransport
属性 设置 为 false ( 在 config/web.php 中 ) , 否则 每 封 邮件 都会 保存 到 runtime/mail 中 。