草庐IT

eval_model_params

全部标签

ruby-on-rails - Ruby on Rails 教程 对 Params 哈希的工作原理感到困惑

所以我看到其他人对此感到困惑,我已经阅读了其他答案,但我仍然感到困惑。在删除请求期间,信息是如何存储和解析到参数散列中的?我了解它在向其提交信息方面的工作原理。即当发出Put、Post或Get请求时,我知道信息是通过paramshash传递给相应的Controller操作的。但是,基于用户部分(_user.html.erb)中的以下代码:以及自动路由到的DESTROY操作中的代码:defdestroyUser.find(params[:id]).destroyflash[:success]="Userdestroyed."redirect_tousers_urlend我不明白param

ruby-on-rails - 为什么在不传递 :id param work (in rails)? 的情况下重定向到 #show 操作

我有一个关于Rails的简单问题。我遵循了一个教程(来自CrashLearner)。在该教程中,我们有一个简单的资源message,它生成常规的后续路线(摘自rakeroutes)PrefixVerbURIPatternController#ActionmessagesGET/messages(.:format)messages#indexPOST/messages(.:format)messages#createnew_messageGET/messages/new(.:format)messages#newedit_messageGET/messages/:id/edit(.:fo

ruby-on-rails - 目录 : Model validation question

我有一个基本的ActiveRecord模型,其中我有两个要验证的字段。要求是至少有一个字段必须有值。两者都可以有值,但至少有一个需要有值。我该如何表达validates_presence_of声明?例如:validates_presence_of:main_filevalidates_presence_of:alt_file我不希望只有其中一个为空时才产生错误,只有两个都为空时才产生错误。 最佳答案 validates_presence_of:main_file,:if=>Proc.new{|p|p.alt_file.blank?}

ruby-on-rails - Rails 教程 3 第 7 章 : User Model Rspec Test Failing

我一直在成功地遵循Rails教程3,直到我到达第7章并实现了用户模型,现在我的rspec一直失败。这是我的user.rb文件输出classUsertrue,:length=>{:maximum=>50}validates:email,:presence=>true,:format=>{:with=>email_regex},:uniqueness=>{:case_sensitive=>false}validates:password,:presence=>true,:confirmation=>true,:length=>{:within=>6..40}before_save:encr

ruby-on-rails - rails : force a model to be not valid

我有一个非常特殊的情况,我想强制模型实例无效。像这样:user=User.newuser.valid?#trueuser.make_not_valid!user.valid?#false有什么办法可以实现吗?谢谢! 最佳答案 你可以这样做:validate:forced_to_be_invaliddefmake_not_valid!@not_valid=trueendprivatedefforced_to_be_invaliderrors.add(:base,'hasbeenforcedtobeinvalid')if@not_val

ruby - instance_eval 和 class << self 之间的区别?

我似乎无法理解这两个“构造”之间的确切区别。在我看来,以下小脚本应该输出相同的内容三次:classExampleputsselfclass但是,输出是:Example#Example这是我的理由:Example是Class的实例,所以self在类主体中指的是;class套self随便什么obj在给定的block中,在我的例子中是Class的实例那是Example(这是我可能错的地方);instance_eval在给定实例中运行block,因此,在我的例子中,这与将代码直接放入类主体中的block几乎相同。我目前的猜测是class在Example之间插入一个幽灵类和Class并将self

ruby-on-rails - Rails link_to params .id 而不是/id

我在创建链接时遇到了一个小问题。我的看法:'Erdusikker?',:method=>:delete%>输出:http://localhost:3000/blogs/5/comments.6它应该在哪里:http://localhost:3000/blogs/5/comments/6 最佳答案 blog_comments_path是博客所有评论的路径。如果您只想发表评论,则必须使用blog_comment_path(检查rakeroutes,我可能的语法有误。但是你明白了这个想法。)

ruby-on-rails - NilClass :Class 的未定义方法 'model_name'

浏览器在Locals#show中返回以下错误:NilClass:Class的未定义方法'model_name'51:52:53:54:这是我的locals_controller.rb(显示Action)defshow@local=Local.find(params[:id])@foods=@local.foods.paginate(page:params[:page])respond_todo|format|format.html#show.html.erbformat.json{renderjson:@local}end结束这里是foods_controller.rb(创建操作)de

Ruby eval 在 irb 和文件中的行为不同

此代码在irb中有效:irb(main):037:0>evalnilirb(main):041:0>putsmachinehost=>nilirb(main):042:0>putsattributemachine=>nilirb(main):043:0>然而,当我尝试执行与ruby​​脚本相同的代码时,出现以下错误:../autosys/convert_jil_to_zapp.rb:40:undefinedlocalvariableormethod`machine'formain:Object(NameError)from../autosys/convert_jil_to_zapp.r

ruby-on-rails - ruby rails : Access information from other models?

另一个RubyonRails新手问题:在我的帖subview中,我想显示作者姓名。post数据库表存储作者id,它与users表中的usersid列相同。该用户在用户表中也有一个用户名列。有了用户id,我该如何获取用户名呢? 最佳答案 User.find(user_id).username是一种方式。如果你有一个belongs_to帖子和用户之间的关系是post.user.username这更像是“Rails方式”。 关于ruby-on-rails-rubyrails:Accessinf