Tag: ruby on rails 3

RAILS:如何在回调中创建新的collection.build?

如何使用其他模型在after_save中创建新记录? 我试过这一行导致“未定义的方法`期刊’为nil:NilClass” 例如 resources :users do resource :profile resources :journals end class User < ActiveRecord::Base has_one :profile has_many :journals end class Profile < ActiveRecord::Base belongs_to :user after_save :create_new_journal_if_none private def create_new_journal_if_none if user.journals.empty? ???? user.journals.build() ???? end end end class Journals < ActiveRecord::Base belong_to :user end

如何基于combobox调用控制器操作?

我正在使用Ruby on Rails 3.2.2和ruby 1.9。 我有一个模型招标,其中一个属性是状态。 在索引页面上,第一次加载时,它会根据已登录的用户公司显示招标数据(它还会显示状态)。 我希望有一个combobox的filter,它将包含所有状态(Initiated,Closed,Won ..etc),所以当用户更改filter时,我想通过将状态提交给控制器来更改表​​数据这将根据状态过滤掉投标。 我怎样才能做到这一点? 如何使用Ajax(因为唯一改变的是表数据而不是整个页面)? 除了状态之外,我还有不同的过滤选项,例如bid_amount(也是其中一个属性)。 如何将bid_amountfilter按数据与状态组合(即,如果用户想要显示出价金额为b / n 10,000-100,000的已关闭状态)。 在控制器上编写查询时我不会有问题,但我不知道如何在视图中使用它。 由于ruby没有像Java这样的Enum,我还从模型类中的数组加载这些状态。 这是一个很好的方法吗? 任何建议也将不胜感激。

Prawn + Prawnto问题

我知道大虾正在工作,因为我有一个show动作,如果我添加.pdf到它的末尾加载show.pdf.prawn。 但是,我有一个表格: “/holders”, :action=> “generate”, format: “pdf”) do %> 这会将count提交给generate动作。 在我的生成动作中,我有以下内容: def generate prawnto :filename => “print.pdf” respond_to do |format| format.html format.pdf { render :layout => false} end end 和我的generate.pdf.prawn看起来像: pdf.text “HELLO WORLD” 当我提交表单时,我得到了URL: http://localhost:3000/generate.pdf ,Chrome告诉我Failed to load PDF document而没有其他错误或信息。 我注意到我得到了:在我的开发日志中Rendered holders/generate.pdf.erb ,表明它甚至没有找到.prawn文件。 我究竟做错了什么?

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

在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 […]

嵌套设置错误未定义方法`self_and_descendants’用于#

我在我的代码中使用Nested_Set gem来对Categories,Subcategories和Products进行排序。 我试图将我的嵌套集的深度/级别限制为不再深入2.目前我收到错误 Nested Set Error undefined method `self_and_descendants’ for # 我正在尝试创建一个限制菜单类型样式,我将尝试使其拖放可排序。 这是我的代码:有人可以浏览它并帮助我理解这个错误吗? 谢谢Category.rb class Category :parent_id has_many :products scope :category, where(“parent_id IS NULL”) scope :subcategories, where(“parent_id IS NOT NULL”) scope :with_depth_below, lambda { |level| where(self.arel_table[:depth].lt(level)) } end categories_controller class CategoriesController “Category created! Woo Hoo!” else render “new” end end def edit @category = Category.find(params[:id]) […]

Config Tire与Bonsai ElasticSearch Heroku附加组件一起使用

所以我有一个rails 3.2 app。 我创建了一个索引。 我按照本指南: https ://gist.github.com/nz/2041121在config/initializers/bonsai.rb创建一个bonsai.rb文件它看起来像这样: ENV[‘ELASTICSEARCH_URL’] = ENV[‘BONSAI_URL’] # Optional, but recommended: use a single index per application per environment. # Caveat: This convention not be entirely supported throughout Tire’s API. app_name = Rails.application.class.parent_name.underscore.dasherize app_env = Rails.env INDEX_NAME = “#{app_name}-#{app_env}” 但是我的工作,这个来自heroku日志的外包: 2013-03-06T17:04:54+00:00 app[web.1]: Processing by SchoolsController#index as HTML 2013-03-06T17:04:54+00:00 app[web.1]: Started GET “/trafikskola?utf8=%E2%9C%93&query=Malm%C3%B6” […]

active_scaffold挂起无限循环

我正在尝试在我的Rails(3.0,ruby 1.8.7)项目中使用active scaffold (3.0.26)。 我在页面上添加了一个简单的招标: ‘users’, :constraints => {:gender => “male”}%> 当我进入该页面时,应用程序启动无限循环。 消耗越来越多的资源,唯一的解决方案是kill -9服务器进程。 感觉这是一个基本错误,但我不知道,我做错了什么。 你可以帮帮我吗?

从逗号分隔的ID一次创建多个记录

所以我有一个文本字段,用户可以在其中放置逗号分隔的卡ID,例如1,2,3。 当该用户提交表单时,我想创建他提交的每个ID的新记录。 一个为1,一个为2,一个为3。 我该怎么办? 谢谢

如何在Rails 3.2.3中本地化一般错误消息?

我使用以下部分显示Rails 3.2.3中我的大多数模型的错误消息: # _error_messages.html.erb prohibited this from being saved: There were problems with the following fields: 这很有效,直到我决定使用I18n本地化我的应用程序。 我为德语内容创建了一个新文件de.yml ,其中包含了这个(以及其他许多内容): # de.yml errors: &errors format: ! ‘%{attribute} %{message}’ messages: blank: muss ausgefüllt werden template: body: ! ‘Bitte überprüfen Sie die folgenden Felder:’ header: one: ! ‘Konnte %{model} nicht speichern: ein Fehler.’ other: ! ‘Konnte %{model} nicht […]

如何更新AR模型上属性的属性?

我正在使用piggybakgem 。 我有一个产品q : 1.9.3p194 :009 > q => #<Product id: 20, name: "iPad", description: "\r\n\tiPad 11" tablet that will change the way…”, price: 499.0, vendor_id: 11, created_at: “2012-12-15 23:40:27”, updated_at: “2013-01-01 00:18:39”, image: “ipad.png”, sku: “AB-09123”> q有一个属性piggybak_sellable ,它有其他属性。 1.9.3p194 :010 > q.piggybak_sellable => nil 这是在Rails管理UI中分配的Product可用属性的示例。 1.9.3p194 :011 > p.piggybak_sellable => #<Piggybak::Sellable id: 1, sku: […]