Tag: ruby在轨道 3

不兼容的字符编码:ASCII-8BIT和UTF-8

我使用Ruby 1.9.2和Rails 3.0.5 我有以下错误: 不兼容的字符编码:ASCII-8BIT和UTF-8 这与我认为的数据库无关。 错误是在这条线在一个视图happinging(只是一个div haml调用): #content 完整的堆栈: ActionView::Template::Error (incompatible character encodings: ASCII-8BIT and UTF-8): 21: -flash.each do |name, msg| 22: =content_tag :div, msg, :id => "flash_#{name}" 23: %div.clear 24: #content 25: = yield 26: = render :partial => "layouts/grid_right" if render_grid_right? 27: = render :partial => "layouts/footer" app/views/layouts/application.html.haml:24:in `_app_views_layouts_application_html_haml___4380000789490545718_2180251300_2717546578298801795' actionpack (3.0.5) lib/action_view/template.rb:135:in […]

如何在Rails中明确指定模型的表名映射?

我有一个名为国家的模型类,我希望它映射到一个数据库表“cc”。 这是如何在Rails(3)中完成的?

Rails 3:如何在Ajax调用中“redirect_to”?

提交login表单后,使用Ajax调用以下attempt_login方法。 class AccessController < ApplicationController […] def attempt_login authorized_user = User.authenticate(params[:username], params[:password]) if authorized_user session[:user_id] = authorized_user.id session[:username] = authorized_user.username flash[:notice] = "Hello #{authorized_user.name}." redirect_to(:controller => 'jobs', :action => 'index') else […] end end end 问题是redirect_to不起作用。 你将如何解决这个问题?

在Rails 3视图中,删除链接发送“Get”而不是“Delete”

我正在使用Rails 3,并有一个从数据库中输出post列表的页面。 我希望能够从链接中删除post。 下面的第二个例子工作,但第一个没有。 有人知道为什么第一个不行? 我的观点包含: # this link sends a "GET" request which asks for the #show function <%= link_to 'Delete', post, :method => :delete %> # this link sends the proper "DELETE" request which asks for the #destroy function <%= button_to 'Delete', post, :method => :delete %> 我的路线文件包含以下内容: resources :posts

铁轨3 – link_to销毁不工作

我试图创build一个销毁链接到我的用户控制器,我也使用devise。 这是我的代码 – 视图 <%= link_to 'Delete User?', child, :confirm => "Are you sure you want to delete #{child.full_name}?", :method => :delete, :class => "user-additional", :style => "font-size:12px;font-weight:normal;" %> 调节器 def destroy if @user = User.find(params[:id]) @user.destroy respond_to do |format| format.html { redirect_to account_index_path } format.xml { head :ok } end end end 路线 devise_for […]

Ruby on Rails 3:通过Rails将数据stream式传输到客户端

我正在开发与RackSpace云文件(类似于Amazon S3,但缺less某些function)的Ruby on Rails应用程序。 由于缺乏每个对象访问权限和查询stringauthentication的可用性,下载给用户必须通过应用程序进行调解。 在Rails 2.3中,它看起来像你可以dynamic构build一个响应,如下所示: # Streams about 180 MB of generated data to the browser. render :text => proc { |response, output| 10_000_000.times do |i| output.write("This is line #{i}\n") end } (来自http://api.rubyonrails.org/classes/ActionController/Base.html#M000464 ) 而不是10_000_000.times…我可以转储我的cloudfilesstream生成代码在那里。 麻烦的是,这是当我尝试在Rails 3中使用这种技术时得到的输出。 #<Proc:0x000000010989a6e8@/Users/jderiksen/lt/lt-uber/site/app/controllers/prospect_uploads_controller.rb:75> 看起来也许proc对象的call方法不被调用? 任何其他的想法?

在Rails 3中删除ActiveRecord

现在Rails 3testing版已经出来了,我想我应该看看重写一个我刚刚开始在Rails 3testing版中工作的应用程序,以便获得它的感觉并获得一点启动。 该应用程序使用MongoDB和MongoMapper的所有模型,因此不需要ActiveRecord。 在以前的版本中,我以下面的方式卸载了activerecord: config.frameworks -= [ :active_record ] # inside environment.rb 在最新版本中这不起作用 – 它只是抛出一个错误: /Library/Ruby/Gems/1.8/gems/railties-3.0.0.beta/lib/rails/configuration.rb:126:in `frameworks': config.frameworks in no longer supported. See the generated config/boot.rb for steps on how to limit the frameworks that will be loaded (RuntimeError) from *snip* 当然,我已经看到了boot.rb,但是据我所知,在这里我不知道如何去卸载AR。 我需要这样做的原因是因为加载不需要的东西不仅是愚蠢的,而且是因为即使在我尝试为控制器运行一个生成器时也无法build立数据库连接。 这是因为我已经抹掉了database.yml并用MongoDB的连接细节replace了它,以便使用这个要点来使用MongoDB连接细节的database.yml。 不知道为什么它需要能够发起一个数据库连接,只是为了生成一个控制器无论如何…. 有谁知道正确的Rails 3这样做?

有人可以清楚,简单地向我解释collection_select吗?

我正在浏览collection_select的Rails API文档,它们是非常糟糕的。 标题是这样的: collection_select(object, method, collection, value_method, text_method, options = {}, html_options = {}) 这是他们给出的唯一示例代码: collection_select(:post, :author_id, Author.all, :id, :name_with_initial, :prompt => true) 有人可以解释,使用一个简单的关联(比如一个User has_many Plans ,一个Plan属于一个User ),我想在语法中使用什么?为什么? 编辑1:另外,如果你解释了它是如何工作在form_helper或一个常规的forms,这将是非常棒的。 想象一下,你正在向理解Web开发的Web开发人员解释这一点,但对于Rails来说是相对较新的。 你会如何解释?

如何在heroku中清空数据库

我在Heroku上的RoR3 webapp工作。 如何清空数据库?

在Heroku的2个应用程序之间共享数据库

我想从另一个Heroku应用程序访问应用程序的数据库。 这在共享数据库中是可行的吗?