Questions tagged «ruby-on-rails-4»

对于特定于Rails版本4的问题。如果您的问题通常适用于Ruby on Rails,请使用[ruby-on-rails]标签。

1
Rails 4:在子路径中组织Rails模型而不使用命名空间模型吗?
可能会有这样的事情吗? app/models/ app/models/users/user.rb app/models/users/education.rb 目标是更好地组织/ app / models文件夹,但不必为模型命名空间。 Rails 3的一个悬而未决的问题是: Rails 3.2.9和子文件夹中的模型。 使用命名空间指定table_name似乎可以工作(请参见Rails 4模型子文件夹),但是我想在没有命名空间的情况下执行此操作。

4
Rails API:实现身份验证的最佳方法?
我正在写一个Rails 4应用程序,它将公开尚未开发的移动应用程序的API。用户将使用来自移动应用程序的电子邮件和密码进行身份验证。 虽然我已经找到了很多有关该主题的信息。很难分辨出什么是过时的或非最佳的。我已经读过关于HTTP基本身份验证(似乎不太安全)和基于HTTP令牌的身份验证的信息,但是我不确定如何将其与常规的电子邮件和密码身份验证结合使用(我正在使用Devise by方式)。 我只是想知道当前如何实现这一点的最佳实践,所以我一定会走正确的路。

8
库未加载:/usr/local/opt/readline/lib/libreadline.6.dylib(LoadError)
我尝试运行我的rails c但由于某种原因,出现此错误: https://gist.github.com/anonymous/166713e8cde860fb188a8dffb98a1563 ᐅ rails c Running via Spring preloader in process 6609 /Users/zulhilmi/.rvm/gems/ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `require': dlopen(/Users/zulhilmi/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle, 9): Library not loaded: /usr/local/opt/readline/lib/libreadline.6.dylib (LoadError) Referenced from: /Users/zulhilmi/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle Reason: image not found - /Users/zulhilmi/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle from /Users/zulhilmi/.rvm/gems/ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `block in require' from /Users/zulhilmi/.rvm/gems/ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:240:in `load_dependency' from /Users/zulhilmi/.rvm/gems/ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `require' from /Users/zulhilmi/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/completion.rb:10:in `<top (required)>' from /Users/zulhilmi/.rvm/gems/ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `require' from …

5
jQuery仅在Rails 4应用程序中的页面刷新时加载
我创建了Rails 4应用程序,并添加了fancybox库以实现图像弹出效果。它工作正常,但仅在刷新页面时有效。如果用户未刷新页面,则jquery根本不起作用。我也尝试使用小型jquery方法对其进行测试,但所有方法只有在页面刷新后才能工作。我也在使用Twitter Bootstrap。 我的assets / application.js文件: //= require jquery //= require jquery_ujs //= require fancybox //= require twitter/bootstrap //= require turbolinks //= require_tree . $(document).ready(function() { $(".fancybox").fancybox(); $("#hand").click(function(){ if($("#check6").is(':visible')) { $("#check6").hide(); } else { $("#check6").show(); } }); });

2
Rails 4中secret_key_base的用途是什么
我是Rails 4的新手,并且不了解Rails 4中secret_key_baseunder的使用。config/secrets.yml您能解释一下这个概念吗? 此外,当我在生产环境中我的工作,我提示设置secret_key有devise.rb,config.secret_key和secret_key_base。但是,我可以使用该rake secret命令生成一个新的机密。 开发和生产环境之间有什么区别? secret_key当我secret_key_base每次添加新生成的内容时,它如何匹配新生成的内容? 如何通过其他服务器保护应用程序?

16
Heroku不会在Rails 4中的资产管道下编译文件
在Rails 4和Ruby 2.0中使用资产管道在本地计算机上一切正常。但是当部署到heroku时,显示: -----> Preparing app for Rails asset pipeline Running: rake assets:precompile I, [2013-03-12T03:28:29.908234 #912] INFO -- : Writing /tmp/build_1n6yi8lwna3sj/public/assets/rails-2ee5a98f26fbf8c6c461127da73c47eb.png I, [2013-03-12T03:28:29.914096 #912] INFO -- : Writing /tmp/build_1n6yi8lwna3sj/public/assets/trash-3c3c2861eca3747315d712bcfc182902.png I, [2013-03-12T03:28:33.963234 #912] INFO -- : Writing /tmp/build_1n6yi8lwna3sj/public/assets/application-bf2525bd32aa2a7068dbcfaa591b3874.js I, [2013-03-12T03:28:40.362850 #912] INFO -- : Writing /tmp/build_1n6yi8lwna3sj/public/assets/application-13374a65f29a3b4cea6f8da2816ce7ff.css Asset precompilation completed (14.36s) Heroku似乎可以编译文件,但是将其放在/ …

4
在Rails 4中,不赞成使用Model.scoped,但是Model.all不能替代它
Model.scoped现在不建议使用Rails 4 。 DEPRECATION WARNING: Model.scoped is deprecated. Please use Model.all instead. 但是,有一个区别Model.scoped和Model.all,那就是scoped.scoped返回一个范围,而all.all运行查询。 在Rails 3上: > Model.scoped.scoped.is_a?(ActiveRecord::Relation) => true 在Rails 4上: > Model.all.all.is_a?(ActiveRecord::Relation) DEPRECATION WARNING: Relation#all is deprecated. If you want to eager-load a relation, you can call #load (e.g. `Post.where(published: true).load`). If you want to get an array of …

3
fe_sendauth:未提供密码
database.yml: # SQLite version 3.x # gem install sqlite3 # # Ensure the SQLite 3 gem is defined in your Gemfile # gem 'sqlite3' development: adapter: postgresql encoding: utf8 database: sampleapp_dev #can be anything unique #host: localhost #username: 7stud #password: #adapter: sqlite3 #database: db/development.sqlite3 pool: 5 timeout: 5000 # Warning: …

8
Rails 4默认范围
在我的Rails应用程序中,默认范围如下所示: default_scope order: 'external_updated_at DESC' 我现在已经升级到Rails 4,并且,我当然收到以下弃用警告:“不建议使用散列调用#scope或#default_scope。请使用包含范围的lambda。”。我已经成功转换了其他范围,但不知道default_scope的语法是什么。这不起作用: default_scope, -> { order: 'external_updated_at' }

5
在Rails 4中相当于has_many'conditions'选项是什么?
有人可以告诉我在Rails 4中执行以下行的等效方法是什么吗? has_many :friends, :through => :friendships, :conditions => "status = 'accepted'", :order => :first_name 我尝试了以下方法: has_many :friends, -> { where status: 'accepted' }, :through => :friendships , :order => :first_name 但是我收到以下错误: Invalid mix of scope block and deprecated finder options on ActiveRecord association: User.has_many :friends

2
ActiveRecord或查询哈希符号
我知道有3种主要符号为whereActiveRecord方法提供参数: 纯弦 数组 杂凑 指定and的where方法是直截了当: # Pure String notation Person.where("name = 'Neil' AND age = 27") # Array notation Person.where(["name = ? AND age = ?", 'Neil', 27]) # Hash notation Person.where({name: "Neil", age: 27}) 指定or相同的where方法让我很困惑哈希语法。可能吗? # Pure String notation Person.where("name = 'Neil' OR age = 27") # Array notation …

4
生成迁移-创建联接表
我经历了许多期待SO和google职位产生连接表的迁移has many and belongs to many协会并没有什么工作。 所有解决方案都生成一个空的迁移文件。 我正在使用rails 3.2.13,我有两个表:security_users和assignments。这些是我尝试过的一些事情: rails generate migration assignments_security_users rails generate migration create_assignments_security_users rails generate migration create_assignments_security_users_join_table rails g migration create_join_table :products, :categories (following the official documentation) rails generate migration security_users_assignments security_user:belongs_to assignments:belongs_to 谁能说出如何在两个表之间创建联接表迁移?

6
尝试创建模型时,“ rails generate”命令挂起
我是Rails的新手,今天早上决定放弃我的整个数据库设计/模型并重新开始。而且,作为菜鸟,我敢肯定做错了。 我删除了其中的所有文件db/migrate/并删除了表。当我尝试生成第一个新模型类时,导轨刚刚挂起。在我击中^ C并尝试其他方法之前,先在杂草中脱掉10分钟。 这次,我再次放下桌子,将整个项目移到project.bad并运行新的rails重新开始。同样,用旧名称生成新项目后,它挂在rails generate命令上(我使用的是相同的项目名称)。 无奈之下,我尝试在相同的根目录下创建另一个新项目。尤里卡!这像冠军一样工作,创建了控制器和模型类,但是我完全无法使用原始项目名称,原始项目或任何新创建的项目来生成任何东西。我想让它重新工作是什么?我现在不介意完全丢失,但是我希望能够再次使用原始项目名称! 这是log / development.log的样子: (255.5ms) CREATE TABLE `schema_migrations` (`version` varchar(255) NOT NULL) ENGINE=InnoDB (337.7ms) CREATE UNIQUE INDEX `unique_schema_migrations` ON `schema_migrations` (`version`) ActiveRecord::SchemaMigration Load (0.2ms) SELECT `schema_migrations`.* FROM `schema_migrations` (0.2ms) SELECT `schema_migrations`.`version` FROM `schema_migrations` 知道最后一次SELECT之后会发生什么吗?

2
RoR嵌套属性在编辑时会产生重复
我正在尝试遵循Ryan Bates RailsCast#196:嵌套模型第1部分。Ryans版本有两个明显的区别:1)我正在使用内置脚手架,而不是他所使用的漂亮,以及2)我正在运行rails 4(我真的不知道Ryans在他的演员表中使用什么版本) ,但不是4)。 所以这就是我所做的 rails new survey2 cd survey2 bundle install rails generate scaffold survey name:string rake db:migrate rails generate model question survey_id:integer content:text rake db:migrate 然后像这样将关联添加到模型中 class Question < ActiveRecord::Base belongs_to :survey end 所以 class Survey < ActiveRecord::Base has_many :questions accepts_nested_attributes_for :questions end 然后我添加了嵌套视图部分 <%= form_for(@survey) do …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.