这是我第一次在rails项目中设置邮件.有人告诉我使用SparkPost并为多个动作创建不同语言的模板.
为简单起见,我们说一个user_signed_up(用户)邮件.
目前我有这个设置工作:
Gem安装:'sparkpost'
mail.rb
ActionMailer::Base.smtp_settings = {
address: "smtp.sparkpostmail.com",
port: 587,
enable_starttls_auto: true,
user_name: "SMTP_Injection",
password: SPARKPOST_API_KEY,
domain: 'foo-bar.com'
}
ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.default charset: "utf-8"
Run Code Online (Sandbox Code Playgroud)
application_mailer.rb
require 'sparkpost'
class ApplicationMailer < ActionMailer::Base
default from: "Seal Notification <noreply@foobar.com>"
layout 'mailer'
end
Run Code Online (Sandbox Code Playgroud)
signup_mailer.rb
class SignupMailer < ApplicationMailer
def user_signed_up(user)
receiver = user.email
sender = 'myself@test.com'
title = 'Thanks for registering'
body = 'This is a test body'
sparky = SparkPost::Client.new(SPARKPOST_API_KEY)
sparky.transmission.send_message(receiver,sender,title,body)
end
end
Run Code Online (Sandbox Code Playgroud)
我可以成功发送电子邮件.
虽然,由于多语言和身体不能风格,这绝对不可扩展.
现在我需要设置模板以允许非技术人员调整电子邮件模板.
但这里是我被困的地方,对以下问题的回答将极大地帮助我:
1)如何发送特定的电子邮件模板?
2)如何将变量传递给这些模板?
3)我如何处理多语言支持? …
我有一个哈希类别如下:
categories = {"horeca" => ["bar", "waiter", "kitchen"],
"retail" => ["eerste", "tweede"]}
Run Code Online (Sandbox Code Playgroud)
如果值包含在值数组中,我想找到它们的键.
跟随之类的事情
categories.key("bar")
Run Code Online (Sandbox Code Playgroud)
这将返回"horeca"
截至目前,如果我这样做,我只能得到"horeca"
categories.key(["bar", "waiter", "kitchen"])
Run Code Online (Sandbox Code Playgroud) 我目前正在打破这个简单的循环任务,我必须做的循环.
基本上我想要实现的是:
1)用户给出了星形金字塔的长度
2)用for循环制作金字塔.
它需要看起来像这样:(如果它需要5层高;第一行是5个空格1星;第二行4个空格2星等等.
*
**
***
****
Run Code Online (Sandbox Code Playgroud)
(难以格式化,但你得到了我的意图.)
我现在有这个
public void Pyramid()
{
Console.WriteLine("Give the hight of the pyramid");
_aantal = Convert.ToInt32(Console.ReadLine());
for (int i = 1; i <= _aantal; i++) // loop for hight
{
for (int d = _aantal; d > 0; d--) // loop for spaces
{
Console.Write(_spatie);
}
for (int e = 0; e < i; e++) // loop for stars
{
Console.Write(_ster);
}
Console.WriteLine();
}
}
Run Code Online (Sandbox Code Playgroud)
输出始终是插入的空格数量,并且不会正确递减.虽然如果我调试它,它会正确倒计时.
谢谢你的回复.
我的模型中有一个示波器
scope :created_this_week, -> { where("created_at >= ?", Time.zone.now.beginning_of_week) }
Run Code Online (Sandbox Code Playgroud)
哪个可以正确返回该周创造的空缺数量。
现在,我需要查看其中有多少个职位空缺具有匹配(每个职位空缺可以有多个匹配),并且状态为“已应用”或“已接受”
因此,我尝试执行以下操作:
Vacancy.created_this_week.includes(:matchings)
.where(matchings: {state: ["accepted", "applied"]})
Run Code Online (Sandbox Code Playgroud)
但我得到以下错误
PG::AmbiguousColumn: ERROR: column reference "created_at" is ambiguous
Run Code Online (Sandbox Code Playgroud)