更新确认电子邮件迁移

Posted

技术标签:

【中文标题】更新确认电子邮件迁移【英文标题】:Update confirmation email migration 【发布时间】:2021-10-30 22:04:12 【问题描述】:

我正在尝试更改电子邮件模板'customer_user_confirmation_email' 的内容。 所以我创建了一个 AbstractHashEmailMigration,就像https://doc.oroinc.com/bundles/platform/EmailBundle/email-templates-migrations/ 中提到的那样 但它不会更新更改

class GdmEmailTemplate extends AbstractHashEmailMigration

    /**
     * @inheritdoc
     */
    protected function getEmailHashesToUpdate(): array
    
        return [
            'customer_user_confirmation_email_gdm' => ['c9a6191f197cb5d3c7bf166c6a246e42']
        ];
    

    /**
     * Return path to email templates
     *
     * @return string
     */
    public function getEmailsDir()
    
        return $this->container
            ->get('kernel')
            ->locateResource('GDM/Bundle/CustomerUserBundle/Migrations/Data/ORM/data/emails/customer-user');
    

我不知道在 Migrations>Data>ORM>Schema>vx_y 中添加什么来加载更改,我运行 oro:migration:load 并清除缓存但没有任何反应

【问题讨论】:

请澄清您的具体问题或提供其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。 【参考方案1】: 架构迁移用于更改数据库架构 数据迁移(也称为数据固定装置)用于用数据填充数据库。

电子邮件模板更改与架构迁移无关。所以和 Schema>vx_y 文件夹无关。

请参阅有关使用 data fixture (or data migration) 的文档。

总而言之,您的数据迁移必须放在捆绑包中的Migrations/Data/ORM/ 文件夹中,然后使用上述文档中提到的oro:migration:data:load 命令执行。

附注可能抽象类的名称必须更改为AbstractHashEmailDataFixture 或其他不那么容易混淆的名称。

【讨论】:

以上是关于更新确认电子邮件迁移的主要内容,如果未能解决你的问题,请参考以下文章

发送确认链接并单击原始电子邮件后,用新电子邮件更新用户的个人资料

.Net Core Entity Framework 电子邮件确认“单击此处”链接不更新“EmailConfirmed”数据库属性

使用 ActionMailer 的电子邮件注册确认

当用户更改电子邮件地址时,“确认电子邮件”输入是一种好习惯吗?

使用 Async/Await 的 Nodemailer 电子邮件确认

使用电子邮件确认码重置 Wso2 密码在使用一次后失效