草庐IT

显示条件队列

全部标签

ruby - 在正则表达式中使用否定条件

是否可以在gsub表达式中使用否定匹配?我想替换以hello开头的字符串except以helloPeter开头的字符串>my-string.gsub(/^hello@/i,'')我应该用什么代替@? 最佳答案 听起来你想要一个负面的前瞻:>>"hellofoo".gsub(/hello(?!peter)/,'lala')#=>"lalafoo">>"hellopeter".gsub(/hello(?!peter)/,'lala')#=>"hellopeter" 关于ruby-在正则表达式

ruby-on-rails - 在一页上显示所有结果 (gem kaminari)

我有数据,它们在某些页面上被剪切(每页10个结果)。Controller中的代码:@messages=Message.order('idDESC').pageparams[:page]如果需要,如何在一页上显示所有结果?它类似于页面导航中的'查看全部'。 最佳答案 如果您仍然希望分页助手在您的View中工作,您可以在per_page选项中设置一个非常高的限制。@messages=Message.order('idDESC').pageparams[:page]ifparams[:all]@messages=@messages.per

ruby-on-rails - 仅显示上周创建的帖子

我希望能够显示帖子并按几个标准对它们进行排序,首先是根据对它们的投票数量,其次是根据它们的创建日期。我不想显示超过一周的帖子,所以只显示上周的帖子。我试过这样做:但它给了我一个NilClass与2比较失败的错误我知道该代码仅通过按投票计数对帖子进行排序来工作,但我也想限制时间,所以有人可以告诉我如何做到这一点。我还是新手,很抱歉这么简单。 最佳答案 @Salil的解决方案没问题,但我建议添加counter_cache列(http://api.rubyonrails.org/classes/ActiveRecord/Associati

ruby-on-rails - 如果字段不为零,则葡萄实体有条件地公开

在一个葡萄实体中,我只想在没有运气的情况下显示一个字段(不是零?)。我正在尝试这段代码,但根本没有按预期工作,但总是隐藏该字段。expose:winner,:using=>PlayerEntity,:unless=>{:winner=>nil}我认为代码本身解释了我真正需要的东西,但正如我所说,我没有得到预期的结果。有什么线索吗? 最佳答案 好的,检查grape-entity的代码我发现你需要将这个block作为RubyProc传递。此代码将按预期工作:expose:winner,:using=>PlayerEntity,:unle

Ruby gem 几乎每个命令都显示 "Invalid argument"错误

我正在OSXElCapitan上完成NativeScript的设置,我被困在我应该安装xcodeproj和cocoapods。我尝试用gem做的几乎所有事情都显示相同的错误:$sudogeminstallxcodeprojERROR:Whileexecutinggem...(Errno::EINVAL)Invalidargument以下命令显示相同的错误,无论我是否使用sudo运行它:$gemupdate--system$gemupdate$geminstallwhatever$geminstallcocoapods我有以下版本:$ruby--versionruby2.3.1p112(

ruby-on-rails - 使用 Rails 在同一页面上显示多个表单

所以我正在为高中生构建一个Rails应用程序,但在创建用户时遇到了问题。我希望学生只有在选择学校并正确输入学校密码后才能创建帐户。这样做的正确/最简单的方法是什么?我是否应该为他们必须首先通过的user#new操作创建一个看门人,或者他们是否应该以一种方式让学生在同一页面上提交表单。一种是常规用户名、电子邮件、密码,使用:form_for@userdo...end然后为高中/高中密码选择创建另一种形式。理想情况下,Controller将能够获取高中表单的参数,验证这些参数,然后继续从用户参数创建用户。这可以使用Rails吗?我的设置:Rails3和Ruby1.9.2dev谢谢!

ruby-on-rails - Ruby On Rails 自定义路由总是重定向到 Controller 的显示操作

我正在尝试创建一条新路线,以便我可以利用RoR的路径变量功能,即new_game_path。就我而言,我想使用load_game_path我已经为适当的Controller创建了一个Action,目前路由如下:resources:gamesdoget'load',on::collectionend每次我使用load_games_path它都使用正确的URI,但似乎重定向到GamesController的显示操作并显示游戏的继承显示View。我检查了rakeroutes,我看到我新创建的路线似乎是所需的路径/games/load(文件路径:/views/games/load.html.e

ruby-on-rails - 2个字段之间的rails presence条件验证

这里是第一个Rails程序。我想比要求更进一步,例如,允许地址簿中的条目接受名字或姓氏或两者。换句话说,我想首先或最后验证validate_presence_of,并且只有在两者都缺失时才抛出异常,这在C++中是一件super简单的事情,但语法在Ruby中是什么样子的呢? 最佳答案 如果first_name为空,您不能运行条件验证last_name的存在吗?如果名字不为空,则不会运行验证,但如果为空,则确保姓氏也不为空...validates:last_name,:presence=>true,:if=>"first_name.bl

ruby-on-rails - 如何显示信用卡的月份和年份选择

我正在使用Rails3.1。这是我的代码,要求用户输入信用卡到期月份和年份。以上代码有效。但是,问题是如果出现验证错误,则会重置所选的到期时间和月份。我试过f.select_month但不支持。 最佳答案 尝试这样的事情:true,:start_year=>Date.today.year,:end_year=>(Date.today.year+10),:use_month_numbers=>true%> 关于ruby-on-rails-如何显示信用卡的月份和年份选择,我们在StackOv

ruby-on-rails - 直接显示使用 chunkypng 创建的图像(不保存)

所以我使用chunky_png创建了一个PNG图像.我不想保存这张图片,因为它只对这个请求有用,所以我试图将这张图片保存为实例变量并将其显示在我的View中。问题是,在我看来,这会导致UTF-8中的无效字节序列错误。我做了什么:#controller@img=source_img.resize(200,200).to_string#view"/>使用raise@img.to_yaml调试@img变量输出正确的字符串,f.e.:---!binary|-iVBORw0KGgoAAAANSUhEUgAAAMgAAADIAQAAAACFI5MzAAACP0lEQVR4nO1YQY6jQAy0A