我有一个问题,让sendgrid成功地在rails 3.1应用程序上发送电子邮件,该应用程序使用authlogic进行身份验证并部署在heroku上.我在config/environments/[development.rb和production.rb]上有以下动作邮件配置:
config.action_mailer.delivery_method = :smtp
config.action_mailer.default_url_options = { :host => 'localhost:3000' }
config.action_mailer.default_charset = "utf-8"
config.action_mailer.raise_delivery_errors = true
config.action_mailer.perform_deliveries = true
config.action_mailer.smtp_settings = {
:address => 'smtp.sendgrid.net',
:port => 587,
:domain => ENV['SENDGRID_DOMAIN'],
:user_name => ENV['SENDGRID_USERNAME'],
:password => ENV['SENDGRID_PASSWORD'],
:authentication => 'plain',
:enable_starttls_auto => true
}
对于production.rb,上面的代码是相同的除外
config.action_mailer.default_url_options = { :host => [app name in heroku] }
当我运行它的开发模式时,我收到以下错误报告:
Completed 500 Internal Server Error in 21740ms
Net::SMTPFatalError (550 Cannot receive from specified address notification@[app-domain]: Unauthenticated senders not allowed
):
我现在真的不知道如何设置它以使其工作.有没有先前在heroku和rails上设置sendgrid的经验的人知道发生了什么事吗?
非常感谢.你们是最棒的!!!
我有一个网站,我想通过Rackspace,EC2,Heroku或Engine Yard推出.
我已经使用了Heroku,并且喜欢启动和运行,推送更新,管理我的数据库等等是多么简单.但是,要获得基于主机名的SSL,我将需要支付20美元.另外,我不知道Heroku会花多少钱:我不完全确定如何衡量我的网站会看到多少活动.
我有一个交易,我可以从Rackspace和EC2获得几百美元的免费托管,但是......他们会像Heroku一样容易处理吗?Engine Yard怎么样?是否所有这些都会让我为我的SSL证书支付一定的金额来正确设置?
谢谢!请让我知道我可以澄清的内容 - 我对启动网站的世界还很陌生:)
林戈
我正试图加入一个加载Facebook新闻源的功能:
UIIntentionalStream.instance && UIIntentionalStream.instance.loadOlderPosts();
Run Code Online (Sandbox Code Playgroud)
在Facebook.com上.
有没有办法让我用自己的JavaScript做到这一点?基本上,我需要进行某种回调 - 当调用该函数时,我希望调用自己的函数.
首先,我正在使用RVM ...而且我对管理gem列表知之甚少.
所以,我尝试使用heroku db:push将我的数据库推送到heroku,我收到以下错误:
$ sudo heroku db:push
Taps Load Error: no such file to load -- taps/operation
You may need to install or update the taps gem to use db commands.
On most systems this will be:
sudo gem install taps
Run Code Online (Sandbox Code Playgroud)
我安装了水龙头(sudo gem安装水龙头,现在点击0.3.23),我有最新的heroku.不知道为什么会发生这种情况......而且我似乎无法在网上找到很多信息.我尝试运行sudo heroku db:push,但这根本没有改变任何东西.
我也尝试在本地安装gem(?),但这给了我一个gem权限错误.
关于这里可能发生什么的任何想法?
我正在尝试将一个全新的Ruby on Rails应用程序推送到Heroku.目前,它位于MySQL上.看起来Heroku并不真正支持MySQL,因此我们正在考虑使用他们支持的PostgreSQL.
我有多难以期待这一点?我需要做些什么来实现这一目标?
再次请注意,我现在的DB(开发和生产)都是空的.
我正在使用此工具提示:http://flowplayer.org/tools/demos/tooltip/index.html
我的html文件中有以下几行:
<script src="/javascripts/home.js" type="text/javascript"></script>
<script src="http://cdn.jquerytools.org/1.2.6/jquery.tools.min.js" type="text/javascript"></script>
<script type="text/javascript" src="/scripts/jquery.min.js"></script>
<div id="boo">
<img src="image1.jpg" title="this thing is a tool"/>
<img src="image2.jpg" title="this thing is also tool"/>
</div>
Run Code Online (Sandbox Code Playgroud)
我的home.js文件中有以下行:
$("#boo img[title]").tooltip();
Run Code Online (Sandbox Code Playgroud)
我的css文件中有以下行:
.tooltip {
display:none;
background:transparent url(/tools/img/tooltip/black_arrow.png);
font-size:12px;
height:70px;
width:160px;
padding:25px;
color:#fff;
}
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
Uncaught TypeError: Object [object Object] has no method 'tooltip'
Run Code Online (Sandbox Code Playgroud)
我的智慧结束了.我觉得我已经完全按照网站上的例子,但不知道发生了什么.
非常简单的问题.我正在尝试使用gon.我在控制器中设置变量,如下所示:
gon.preference = "hello"
Run Code Online (Sandbox Code Playgroud)
在我的.js.erb文件中,我尝试使用这样的变量:
console.log(gon.preference)
Run Code Online (Sandbox Code Playgroud)
但我得到一个错误,说"gon没有定义".可能是什么问题呢?显然,rails认识到有一个gon变量..js.erb文件位于我的assets/javascripts目录中.我尝试将文件名更改为.js(虽然我没想到这会产生任何影响).显然没有变化.
不知道为什么gon不起作用!
救命?
我在Heroku上使用独角兽.我遇到的一个问题是文件上传.我们使用carrierwave进行上传,基本上,即使对于大小约为2MB的文件,在完成50-60%的上传时,Unicorn也会超时.
我们在本地测试时没有使用独角兽,我在本地没有任何大文件问题(尽管文件使用carrierwave上传到AWS,就像生产+登台一样).但是,在暂存和生产服务器上,我看到我们得到了超时.
有关解决此问题的任何策略?我不确定我是否可以将此文件上传到延迟的作业上(因为我需要向我的用户确认该文件确实已成功上传).
谢谢!林戈
我正在尝试将我的应用程序从Rails 3.2.13切换到Rails 4.这样做,我遇到了一个主要障碍 - 我使用gem mobile_fu来确定用户是否来自移动设备.那个宝石需要3.2.13的栏杆,但轨道4.0.2和轨道4.0.2的sass-rails都要求栏杆> = 4.0.
什么是解决这个问题的好方法?我很乐意深入研究mobile_fu代码,因为它似乎并不特别棘手,但我在处理铁路以及对铁路的依赖性方面的经验很少.
谢谢!
我使用以下代码允许在我的网站上进行触摸拖放.但是,虽然我的代码中具有拖放功能的部分可以工作,但在iPhone上,无论如何我都无法滚动或移动页面.我可以拖放,但常规的iPhone触控功能已经消失!
我在几个stackoverflow响应中找到了以下代码段,所以我想知道是否有解决方法.我希望能够在网络和移动设备上拖放.
谢谢!
我的拖动代码(只是一个列表):
$(function() {
$(".drag_me ul").sortable();
});
Run Code Online (Sandbox Code Playgroud)
触摸事件的代码:
function touchHandler(event)
{
var touches = event.changedTouches,
first = touches[0],
type = "";
switch(event.type)
{
case "touchstart": type = "mousedown"; break;
case "touchmove": type="mousemove"; break;
case "touchend": type="mouseup"; break;
default: return;
}
var simulatedEvent = document.createEvent("MouseEvent");
simulatedEvent.initMouseEvent(type, true, true, window, 1,
first.screenX, first.screenY,
first.clientX, first.clientY, false,
false, false, false, 0/*left*/, null);
first.target.dispatchEvent(simulatedEvent);
event.preventDefault();
}
function init()
{
document.addEventListener("touchstart", touchHandler, true);
document.addEventListener("touchmove", touchHandler, true);
document.addEventListener("touchend", touchHandler, true);
document.addEventListener("touchcancel", touchHandler, true);
}
Run Code Online (Sandbox Code Playgroud) heroku ×4
javascript ×2
jquery ×2
actionmailer ×1
amazon-ec2 ×1
bundler ×1
carrierwave ×1
dom-events ×1
engineyard ×1
hosting ×1
jquery-ui ×1
mysql ×1
postgresql ×1
railtie ×1
sendgrid ×1
taps ×1
tooltip ×1
touch ×1
unicorn ×1