我正在尝试保存一个没有一个字段集的记录 - 它在模型中具有验证数字.即使验证中不需要存在,它仍然会抛出该字段不是数字的错误.
验证:
validates :network_id, :numericality => true
Run Code Online (Sandbox Code Playgroud)
代码就是保存模型:
networks.each do |network|
network.url = network.raw_data.link
network.save!
end
Run Code Online (Sandbox Code Playgroud)
错误:
Validation failed: Network is not a number
Run Code Online (Sandbox Code Playgroud) 有没有更好的方法来写这个:
if myarray.include? 'val1' ||
myarray.include? 'val2' ||
myarray.include? 'val3' ||
myarray.include? 'val4'
Run Code Online (Sandbox Code Playgroud) 我正在使用设计存储current_sign_in_at
和last_sign_in_at
日期时间.
但是,让我们说用户在一个月前登录但是上次在5分钟前查看了一个页面?
有没有办法可以显示("用户上次见过5分钟前").
我正在寻求优化我的网站的速度,并想知道浏览器只会从以下代码或所有字体文件加载他们需要的文件:
@font-face {
font-family: 'Proxima Nova';
src: url('proximanova-regitalic-webfont.eot');
src: url('proximanova-regitalic-webfont.eot?#iefix') format('embedded-opentype'),
url('proximanova-regitalic-webfont.woff') format('woff'),
url('proximanova-regitalic-webfont.ttf') format('truetype'),
url('proximanova-regitalic-webfont.svg#proxima_nova_rgitalic') format('svg');
font-weight: normal;
font-style: italic;
}
Run Code Online (Sandbox Code Playgroud)
另外,这是做@ font-face的最佳方式吗?是否有其他策略可以减少用户的加载时间?
我在名为user的模型中有一个字段类型,它是db中的int.int的值指定它的存储类型.例:
我有其他几个这样的领域,所以创建关联表是过分的.
不是在模型和控制器逻辑中的条件语句中检查那些int值,而是在rails中存在这些常量来存储这些常量.
所以我可以从模型和控制器中做到这一点?
if myuser.type == MOM
elsif myuser.type == GRAND_MOTHER
Run Code Online (Sandbox Code Playgroud)
编辑:解决方案我最后一起去了:
在模型中:
# constants
TYPES = {
:mom => 0,
:dad => 1,
:grandmother => 2,
:grandfather => 3
}
Run Code Online (Sandbox Code Playgroud)
在逻辑上:
if u.type == User::TYPES[:mom]
Run Code Online (Sandbox Code Playgroud)
即使它更长,我觉得当他们阅读我的代码时,对其他开发人员来说更直观.感谢下面的Taro这个解决方案.
"添加到主屏幕"显示在网站的所有页面上,我希望该URL成为保存的主页.
例如,在此页面上:http: //www.domain.com/category/page.html
是否可以通过"添加到主屏幕"保存此URL:http: //www.domain.com
任何帮助将不胜感激.
我有一个Blog
应用程序可以使用的可安装引擎.
允许使用引擎的应用程序设置配置变量site_name
(以便引擎可以在设计中显示)的最佳方法是什么?
更新:
我见过一些宝石创建了'config/initializers/gem_name.rb'文件.有没有关于如何:
我尝试Blog.site_name = "My Site"
在应用程序的config/initializers/blog.rb
文件中创建,但得到一个未定义的方法错误.
确保模型从字符串值中修剪前导和尾随空格的最简单方法是什么.
一个不方便的方法似乎是before_save过滤器 - 虽然对于从字符串中删除空白区域这样常见的东西,也许有一些配置可以做到这一点?
我有一个嵌套形式categories
的stores
资源.他们有一个has_and_belongs_to_many关系.
当我创建嵌套表单时,我在商店表单上获得以下内容:
但我真正想要的是这样的清单:
有任何想法吗?
我的表字段名称是小写的,我从CSV文件获得的字段名称是camelcase.无论如何我可以将哈希数组的键转换为小写吗?
这是我现在的代码:
CSV.foreach(file, :headers => true) do |row|
Users.create!(row.to_hash)
end
Run Code Online (Sandbox Code Playgroud)
这是失败的,因为密钥是驼峰式的(我通过手动编辑文件来验证这一点,使标题行全部小写).
PS.另外,我很想知道为什么地狱栏目会将桌面名称的区分大小写开始起作用?