Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 如何通过数组而不是数据库记录传递变量?_Arrays_Ruby On Rails 3_Forms - Fatal编程技术网

Arrays 如何通过数组而不是数据库记录传递变量?

Arrays 如何通过数组而不是数据库记录传递变量?,arrays,ruby-on-rails-3,forms,Arrays,Ruby On Rails 3,Forms,我目前正在构建一个数据生成器。首先我想实现的是PESEL(基于出生日期的波兰个人ID)生成器-我想在表格中输入一个带有开始和结束出生日期间隔的临时数据-我不想将其存储在数据库中(或者我应该这样做?) 这是我的pesel控制器: def new @pesel = Array.new respond_to do |format| format.html # new.html.erb format.json { render json: @pesel }

我目前正在构建一个数据生成器。首先我想实现的是PESEL(基于出生日期的波兰个人ID)生成器-我想在表格中输入一个带有开始和结束出生日期间隔的临时数据-我不想将其存储在数据库中(或者我应该这样做?) 这是我的pesel控制器:

  def new
    @pesel = Array.new
    respond_to do |format|
      format.html # new.html.erb
      format.json { render json: @pesel }
    end
  end
但是我有一个“未定义的方法`model_name'for NilClass:Class”错误——这是解决这个问题的好方法吗?我在某个地方读到,使用临时变量不符合“Ruby方式”——如果我的解决方案是错误的,请建议正确的解决方案。(例如,通过Cookie?哈希?助手方法传递此变量?)

这是stacktrace(我想):

2011-12-05 16:18:20+0100时127.0.0.1的开始获取“/pesel” 由PeselController处理#新为HTML 布局/应用程序中呈现的pesel/new.html.erb(1513.9ms) 1793ms内完成500个内部服务器错误 ActionView::Template::Error(NilClass:Class的未定义方法“model_name”): 1: 2::date,:start_year=>date.today.year-90, 3::end_year=>Date.today.year-12,:discard_day=>true, 4::订单=>[:月,:年]]> app/views/pesel/new.html.erb:1:in`_app_views_pesel_new_html_erb_708648673_90148530' app/controllers/pesel_controller.rb:7:in'new' Rendered/home/ofca/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.1.1/lib/action\u dispatch/middleware/templates/rescues//u trace.erb(5.6ms) Rendered/home/ofca/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.1.1/lib/action\u dispatch/middleware/templates/rescues//u request\u and\u response.erb(4.0ms) rescues/layout中的Rendered/home/ofca/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.1.1/lib/action\u dispatch/middleware/templates/rescues/template\u error.erb(17.6ms)
form\u for
假定传递给它的对象存在某些属性,例如
model\u name

  • 对于@pesel,不要使用
    form\u,只需使用和相关的
    \u标记
    方法即可
  • 使用Pesel模型。模型不是表,您的模型不必向数据库写入任何内容。只是不要从ActiveRecord继承,而是提供一个
    model\u名称
    form\u所需的任何其他字段

  • 你需要给我们更多关于这个错误的信息。你能给我们完整的跟踪信息吗?这通常会告诉我们哪一行代码实际上被破坏了——这很有帮助。还有,它告诉你在重要的地方有一个零。不应该有零的地方。考虑一下是什么导致了这种情况。检查它是否可以简化模型的构建
    Started GET "/pesel" for 127.0.0.1 at 2011-12-05 16:18:20 +0100
      Processing by PeselController#new as HTML
    Rendered pesel/new.html.erb within layouts/application (1513.9ms)
    Completed 500 Internal Server Error in 1793ms
    
    ActionView::Template::Error (undefined method `model_name' for NilClass:Class):
        1: <%= simple_form_for @pesel do |f| %>
        2:   <%= f.input :date_of_birth, :as => :date, :start_year => Date.today.year - 90,
        3:                                 :end_year => Date.today.year - 12, :discard_day => true,
        4:                                 :order => [:month, :year] %>
      app/views/pesel/new.html.erb:1:in `_app_views_pesel_new_html_erb__708648673_90148530'
      app/controllers/pesel_controller.rb:7:in `new'
    
    Rendered /home/ofca/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.1.1/lib/action_dispatch/middleware/templates/rescues/_trace.erb (5.6ms)
    Rendered /home/ofca/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.1.1/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (4.0ms)
    Rendered /home/ofca/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.1.1/lib/action_dispatch/middleware/templates/rescues/template_error.erb within rescues/layout (17.6ms)