Tag: ruby

如何为form_for创建提交全部按钮

我是Ruby on Rails的新手。 当我点击link_to “save”时,如何让我的表单同时提交。 谢谢您的回答。 这是我的视图文件的片段。 我想用一个按钮同时保存表单。 sheet_attachment_path(getsheets.sheetid,getsheets.sheetid) do |f| %> getsheets.sheetid %> getsheets.projectid %> getsheets.sheetimage %> “sheet_attachments”, :action => “cancel”, :attachmentid => params[:attachmentid] %>

神奇的渲染forms和变量通过局部

任何人都可以向我解释幕后发生的事情 通过创建任务管理器的教程我需要显示我的任务,所以我去了 each .. do 但后来我需要添加一些复选框和按钮来交叉我的任务并将它们移动到另一个类别,这意味着处理表单。 经过一些不成功的尝试合并do / each与表格后,我上网了,我偶然发现了这段代码: 指数: _task部分: 这正确地呈现了所需的代码(WAT!),这很好,但我不知道它是如何做到的,这很糟糕。 不幸的是,这里的文档中没有太多关于渲染变量的信息。 Rails如何知道我想为特定变量渲染_task部分? 这是命名惯例吗? 如何在没有偏见的情况下以此forms编码?

传递的参数未在Rails中读取

我之前发布了这个问题: 在Rails中点击按钮时传递参数 答案非常有效。 但是,我传递的参数无法在erb中调用,即使是从book_now方法传递的book_now也是book_now 。 它在我的服务器日志中显示为Parameters: {“event”=>”4”, “event_option_id”=>”5”}但是当我尝试使用它返回空白,当我刚刚测试它为to_i ,它显示0而不是5 。 我的EventsController有这个方法: def book_now @event_option_id = params[:event_option_id] end 我的链接传递这样的参数: @event.id, :event_option_id => e.id), :id => “book-now-button”, :class => “button” %> 我试图传递这个@event_option_id以便我可以从我的数据库中访问相应的值。 每个EventOption都有一个独特的price , description和name ,当我尝试以多种方式访问​​它们时,我得到(NoMethodError: undefined method ‘price’ for nil:NilClass) 。 知道发生了什么事吗?

没有内存错误,无法分配内存

我是Ruby On Rails的新手,但每次我犯了一个错误(例如在一个函数中),我的电脑(xubuntu 10.10)完全冻结了。 实际上除了等待我什么都做不了,我终于在5或10分钟后得到“无内存错误 – >无法分配内存”错误。 我使用rails 3和mongoDB。 我正在从一个有很多gem的现有项目中发展,有什么后果吗? 谢谢 !

ActiveModel :: MissingAttributeError:无法写入未知属性`user_id`

我正在尝试实施“评论”function,作为我正在建设的项目的一部分。 在本课程的早些时候,我们创建了一个评论表,并让Faker gem生成虚假评论。 我的说明如下: 注释必须与用户关联,因此将user_id外键添加到comments表中。 记得也要添加一个索引; 更新用户模型,以便您可以调用user.comments和Comment模型,以便您可以调用comment.user; 运行db:reset时,修改seeds.rb文件以创建有效注释; 最初我试图运行我的rails generate命令,但一直遇到这个错误: ▶ rake db:migrate == 20150508143445 CreateComments: migrating =================================== — create_table(:comments) rake aborted! StandardError: An error has occurred, this and all later migrations canceled: SQLite3::SQLException: table “comments” already exists: CREATE TABLE “comments” (“id” INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, “description” text, “created_at” datetime NOT NULL, “updated_at” […]

注册表单错误:NilClass:Class的未定义方法`model_name’

所以这是我第一次尝试没有教程指导在RoR上构建网站。 设置我的电子邮件注册表单时遇到了一些麻烦。 我认为我的模型设置或连接方式存在问题,但不太确定。 获取“未定义的方法`model_name’为NilClass:Class”作为错误“。 signup.rb class Signup < ActiveRecord::Base validates_presence_of :email def change create_tabe :quotes do |t| t.string :email end end end signups_controller.rb class SignupsController < ApplicationController def new @signup = Signup.new end def create @signup = Signup.new(secure_params) if @signup.valid? redirect_to root_path else render :new end private def secure_params params.require(:signup).permit(:email) end end 视图的简单forms部分 ‘btn btn-success’ […]

保存记录..但不保存…… :(

我有一个模型的静态方法,它创建多个记录。 保存父节点时调用此方法,将用于创建适当n个子记录的数据传递给此方法(new_record),然后迭代传递给它的数组,并创建子记录。 工作有很多工作活动。 此方法new_record属于job_activities模型,在保存作业记录时在job_controller中调用。 基本上尝试以单一forms实现两个模型。 作业“has_many”job_activities,Job_activites“belongs_to”作业。 这是我到目前为止所放在一起的 – def self.new_record(sk_job_id, activities_list) activities_list.each do | act | puts “AAAAAAAAAAAAAAAAAAAAAAA creating a new record for “+act.inspect+” and ” + sk_job_id.to_s ja = JobActivity.new puts “Job ID SK = “+sk_job_id.to_s puts “act = “+act puts “Record before assignment “+ ja.inspect ja.job_id_sk = sk_job_id ja.job_activity = act ja.created_by = […]

重新加载表单时,嵌套输入消失

在rails应用程序中,我有一个创建产品页面,其中包含一个嵌套的照片表单。 有validation确保总有照片存在。 但是,当我尝试提交没有照片的表单时,产品表单会在没有照片输入字段的情况下重新呈现。 新产品页面haml = form_for @product,:url => products_path, :html => { :multipart => true } do |f| – if @product.errors.any? .error_messages %h2 Form is invalid %ul – for message in @product.errors.full_messages %li = message – if @photo.errors.any? .error_messages %h2 Image is invalid %ul – for message in @photo.errors.full_messages %li = message %p = f.label […]

Ruby Array转换的最佳方式

实现以下目标的最佳方法是什么,我在ABC下面进行了一系列操作 ABC: – ABC:Actions, ABC:Actions:ADD-DATA, ABC:Actions:TRANSFER-DATA, ABC:Actions:EXPORT, ABC:Actions:PRINT, ABC:Detail, ABC:Detail:OVERVIEW, ABC:Detail:PRODUCT-DETAIL, ABC:Detail:EVENT-LOG, ABC:Detail:ORDERS 我想将其格式化为: ABC =>{Actions=> [ADD-DATA,TRANSFER-DATA,EXPORT,PRINT], Detail => [Overview, Product-detail, event-log,orders]}

如何为Rails gem指定rvm gemsets?

MyApp使用的是rvm gemset 1.9.3@rails-3.2。 这不是默认的。 我正在使用gem“随时”定期发送电子邮件通知。 这是我的日程表.rb: every 1.minutes do runner “MyModel.send_emails” # if … end 除非gemset 1.9.3@rails-3.2是默认值,否则Cron作业不起作用。 我如何改进我的schedule.rb,以便为我的scheduller使用另一个gemsets(不仅是默认的@global)。 我已经阅读了官方文档: 无论何时和rvm问题以及有关“rvm gemsets for every”的stackoverflow问题,但都没有找到答案。 我试图在我的shedule.rb中放入以下代码(根据RVM-Notes中的建议): job_type :runner, “{ cd #{@current_path} > /home/####/.rvm/gems/ruby-1.9.3-p448@ rails-3.2/bin/rails; } && RAILS_ENV=:environment bundle exec rails runner ‘:task’ :output” 但它没有结果: ERROR: /home/###/.rvm/gems/ruby-1.9.3-p448@global/gems/bundler-1.3.5/lib/bundler/spec_set.rb:92 :in `block in materialize’: Could not find i18n-0.6.5 in any of […]