我正在使用Devise 3.1.0在Rails 4.0.0上运行.我的路线设置如下:
devise_for :users do
root "devise/registrations#new"
end
resources :books
Run Code Online (Sandbox Code Playgroud)
我想要做的是让Devise注册页面成为用户的欢迎页面,如果他们还没有登录,但是如果他们已登录他们将进入图书索引.现在它只是给我标准的Ruby on Rails:Welcome Aboard页面,好像Devise不存在.我该怎么做?
https://github.com/plataformatec/devise/issues/2393
devise_for :users
devise_scope :user do
authenticated :user do
root :to => 'books#index', as: :authenticated_root
end
unauthenticated :user do
root :to => 'devise/registrations#new', as: :unauthenticated_root
end
end
Run Code Online (Sandbox Code Playgroud) 我正在使用Rails 4.0.2和jquery-rails(3.1.0)以及jquery-ui-rails(4.1.1)gems.我正在尝试将自动填充添加到搜索表单中(使用Bootstrap 3.1.0):
<%= form_tag products_path, method: :get, class: 'navbar-form navbar-left' do %>
<div class='form-group'>
<%= text_field_tag :query, params[:query], id: "navbar-search-input", class: 'form-control', placeholder: 'Product name.....' %>
</div>
<%= button_tag(type: 'submit', id: 'navbar-search-btn', class: 'btn btn-default') do %>
<i class='fa fa-search fa-fw'></i> Search
<% end %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
这是我的应用程序JS和CSS文件:
的application.js
//= require jquery
//= require jquery_ujs
//= require jquery.ui.autocomplete
//= require turbolinks
//= require_tree .
var ready;
ready = (function() {
$('a[href="' + this.location.pathname + '"]').parent().addClass('active'); …Run Code Online (Sandbox Code Playgroud) 我正在使用money-rails gem并希望在我的视图中显示不同货币的列表,但我现在的代码不起作用.
我有我的Price模型和领域in_cents和currency:
create_table :prices do |t|
t.integer :in_cents, default: 0, null: false
t.string :currency, default: 'USD', null: false
Run Code Online (Sandbox Code Playgroud)
现在根据Money gem和Money-Rails文档我必须做的事情如下:
class Price < ActiveRecord::Base
monetize :in_cents, as: "amount", with_model_currency: :in_cents_currency
def all_currencies(hash)
hash.keys
end
Run Code Online (Sandbox Code Playgroud)
比我的简单形式宝石的观点:
= f.input :currency, collection: all_currencies(Money::Currency.table)
= f.input :amount, required: false
Run Code Online (Sandbox Code Playgroud)
但这给了我错误:
undefined method `all_currencies' for #<#<Class:0xd154124>:0xd15bab4>
Run Code Online (Sandbox Code Playgroud)
为什么?
PS
我想显示ISO代码和名称United States Dollar (USD).
我是Rails(4.0.0)和Ruby(2.0.0)的新手,想知道如何给每个用户提供十次相同的书.首先,我创建了三个用户:
user1 = User.create(name: "Fred")
user2 = User.create(name: "Bob")
user3 = User.create(name: "Ron")
Run Code Online (Sandbox Code Playgroud)
现在我想给所有三个用户一本十本书来测试我的应用程序.所以我从这样开始:
book = Book.create(title: "My Book")
Run Code Online (Sandbox Code Playgroud)
在我迷失了如何做each和分配用户之后.你知道怎么?在这种情况下,质量分配安全无关紧要,只需要数据进行视图测试.