在我的编辑动作中,我有
@item = current_user.shop.items.find(params[:id])
Run Code Online (Sandbox Code Playgroud)
这样用户只能编辑属于他们商店的商品.如果他们尝试编辑不属于他们商店的商品,那么他们会收到ActiveRecord :: RecordNotFound错误.
在这种情况下处理此错误的最佳方法是什么?我应该提出例外吗?我应该重定向某个地方并设置闪光灯(如果是这样,我该怎么做),我应该保持原样吗?任何建议表示赞赏.
谢谢
我正在努力机械化.我希望"点击"一组链接,这些链接只能通过它们的位置(div#content中的所有链接)或它们的href来识别.
我已经尝试过上述两种识别方法但没有成功.
从文档中,我无法弄清楚如何根据它们在DOM中的位置返回链接集合(用于单击),而不是直接在链接上返回属性.
其次,文档建议你可以使用:href来匹配部分href,
page = agent.get('http://foo.com/').links_with(:href => "/something")
Run Code Online (Sandbox Code Playgroud)
但我唯一能让它返回链接的方法是传递一个完全限定的URL,例如
page = agent.get('http://foo.com/').links_with(:href => "http://foo.com/something/a")
Run Code Online (Sandbox Code Playgroud)
如果我想返回带有href的链接集合,这不是很有用
http://foo.com/something/a
http://foo.com/something/b
http://foo.com/something/c
etc...
Run Code Online (Sandbox Code Playgroud)
难道我做错了什么?我有不切实际的期望吗?
我找不到有关如何将 Amazon AWS SQS 服务与 Ruby on Rails 结合使用的任何示例。
请有人提供一个使用 SQS 发送电子邮件的简单准系统示例。
我主持AWS,这意味着我无法使用环境变量来控制我的生产和暂存部署.因此,我被迫使用单独的分支进行部署,并且想知道是否有最佳实践方法来维护它们?
如果我将更改合并到我的生产分支中,则包含我的生产设置的提交将在分支历史记录中丢失,从而使调整这些设置变得更加困难.
但是我已经读过在这种情况下你不应该使用rebase,因为它会使回滚更改变得更加困难.
这对我来说似乎很奇怪,有效记录总和会返回字符串,而不是数字
basket_items.sum("price")
Run Code Online (Sandbox Code Playgroud)
这似乎使它起作用,但是我认为我可能错过了一些东西,因为这似乎很奇怪。
basket_items.sum("price").to_i
Run Code Online (Sandbox Code Playgroud) 我一直在看这个Railscast,特别是这些代码行.
// views/reviews/create.js.erb
$("#new_review").before('<div id="flash_notice"><%= escape_javascript(flash.delete(:notice)) %></div>');
$("#reviews_count").html("<%= pluralize(@review.product.reviews.count, 'Review') %>");
$("#reviews").append("<%= escape_javascript(render(:partial => @review)) %>");
$("#new_review")[0].reset();
Run Code Online (Sandbox Code Playgroud)
有人可以解释为什么escape_javascript用于渲染部分,并显示闪光通知,但不是复数函数?
谢谢
我创建了一个函数来返回一个jquery元素.
function GetDialogButton() {
return $('a.dialog');
};
Run Code Online (Sandbox Code Playgroud)
这是在多个其他功能中使用相同的元素时完成的.如果它是从一个地方获得的话我觉得最好,因此如果属性名称改变,将来更容易改变.
我想改进这个getter,以便在单个页面加载中多次调用时不会每次执行搜索.
我怎样才能做到这一点?我要缓存它吗?或者可能没有必要,因为这是优化的?
我正在使用带有rails 3的Devise 3.1.1,我在我的布局中有这个flash处理代码:
<% flash.each do |name, msg| %>
<%= content_tag :section, msg, :id => "flash_#{name}", :class => "flash" %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
我登录我的应用程序,flash说:
"Signed in successfully."
Run Code Online (Sandbox Code Playgroud)
然后退出,然后登录不正确,闪光说:
"Signed out successfully."
"Invalid email or password."
Run Code Online (Sandbox Code Playgroud)
我想我理解为什么我收到两条消息,当登录错误时没有重定向,只有渲染.
不知道怎么解决它.
我在这里有一个基本的网页http://www.webdevout.net/test?0V,转载如下
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<style type="text/css">
body { font-size: 12px;}
</style>
<title>Test</title>
</head>
<body>
<p>test</p>
<form action="/foo" method="get">
<fieldset>
<input type="text" value="bar" />
</fieldset>
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
当我使用firebug检查页面时,文本"test"是预期的12px,但输入中的文本"bar"是11px,我希望它是12px.怎么样了?
activerecord ×2
javascript ×2
ruby ×2
amazon-sqs ×1
branch ×1
c++ ×1
css ×1
deployment ×1
devise ×1
find ×1
flash ×1
font-size ×1
function ×1
git ×1
input ×1
jquery ×1
mechanize ×1
merge ×1
nokogiri ×1
railscasts ×1
rebase ×1