使用Codeigniter和Sendgrid发送电子邮件的优雅/高效方式

使用Codeigniter和Sendgrid发送电子邮件的优雅/高效方式,codeigniter,sendgrid,Codeigniter,Sendgrid,我正在通过与Sendgrid集成,在我们的Codeigniter应用程序中设置一些事务性电子邮件乐趣 我已经做好了准备,可以继续创建所有特定的交易/电子邮件,但我想知道最有效和/或最优雅的方式 在每个函数中包含适当的电子邮件代码似乎有点复杂。要从一个干净、独立的电子邮件控制器调用特定的函数,我需要使用AJAX,以免导致重定向 是否有一些我目前没有考虑的方法可以帮助平衡事物,即清洁和分离,以及一致性和易用性 感谢您的任何想法-不确定您的应用程序结构的细节。但是,您始终可以创建一个模型函数,并从控制

我正在通过与Sendgrid集成,在我们的Codeigniter应用程序中设置一些事务性电子邮件乐趣

我已经做好了准备,可以继续创建所有特定的交易/电子邮件,但我想知道最有效和/或最优雅的方式

在每个函数中包含适当的电子邮件代码似乎有点复杂。要从一个干净、独立的电子邮件控制器调用特定的函数,我需要使用AJAX,以免导致重定向

是否有一些我目前没有考虑的方法可以帮助平衡事物,即清洁和分离,以及一致性和易用性


感谢您的任何想法-

不确定您的应用程序结构的细节。但是,您始终可以创建一个模型函数,并从控制器中的函数调用它


CodeIgniter还提供了一些内置功能来帮助您发送电子邮件,特别是在配置文件中设置一些电子邮件设置,这样您就不必重写这些设置

不久前,我就写了一篇关于这一点的博文。看看这个:


本质上,codeigniter附带了一个非常棒的电子邮件库,可以轻松地通过SMTP发送内容,因此我将向您展示如何连接到该库。

感谢您的回复。事实上,在我发帖后,我突然想到了模特的想法。这似乎是避免执行ajax请求和混淆控制器的最佳方法。我已经在一个“email.php”配置文件中删除了email配置的内容,所以已经解决了。我只是不想让所有的..->to->消息。。堵塞我控制器的东西。虽然将此应用到模型中可能不是最佳实践,我必须为其中一些创建一些模型来获取必要的数据,因此在模型中添加一些额外的行来发送电子邮件似乎是最有效的处理方法。我刚刚意识到,我可以采用另一种中间方法,将模型和控制器工作分开。我可以在作为事务基础的特定控制器的上下文中创建函数,而不是创建一个电子邮件控制器来容纳我的所有电子邮件功能。例如,当某人添加一个新项目时,需要发送一封电子邮件。因此,在projects控制器中,在addNewProject函数下面,我可以有一个addNewProjectEmail,前一个函数调用$this->addNewProjectEmail,瞧!这最终更多的是一个概念问题,而不是我的代码中的一个实际的、特定的实例。感谢您的投入,并尝试提供帮助,最终接受答案。