如何使用Rails提供静态html页面?

我有Rails应用程序,文档是/ public文件夹中的静态html页面。 我公共文件夹的树: -public -docs -intro introduction.html -css some.css index.html Index.html文件是: Some of the text href=”intro/introduction.html”>Introduction 当我打开索引页面css没有加载,当我尝试点击链接时它说路由错误。 据我所知,静态页面不知道在哪里查找css和其他html页面。 我只想要没有任何路由和控制器的静态页面,nginx。 有任何想法吗?

了解Eager Loading以及如何使用它? (具体问题)

我的rails应用程序中有以下关系: 类型 – 有很多 – 作者 作者 – 属于流派,有很多书 书籍 – 属于作者,属于用户 (用户可以将书籍添加到数据库中) 在我的控制器中我有: @books=current_user.books(:include => [:author => :genre], :order => ‘books.created_at DESC’)— – 在我的控制器中,我曾经有过: @authors = Author.All @genres = Genre.All 等等 – 在我看来,我有 @genres.each do |genre| @authors.each do |author| if author.genre_id == genre.id stuff end end 结束 现在我正在使用急切的加载,我无法想象这是最好的方法来做到这一点(也没有,因为我没有@变量) – 我想知道是否有人可以阐明如何接近这个?

在rails_admin paper_trail历史记录中显示User的自定义标签

当我转到paper_trail历史记录页面时,我在User列中看到User对象( #<User:0x007f59a9… )。 有没有办法配置它使用其中一个用户属性? 我以为我可以使用object_label_method但我似乎没有运气。 更新: 我认为这纯粹是一个显示问题但是paper_trail实际上是在版本表的#<User:0x007f59a9…列而不是ID中存储像#<User:0x007f59a9…这样的字符串。 我在ApplicationController覆盖了user_for_paper_trail ,虽然这在我的前端应用程序中成功记录了带有用户ID的版本,但它不在rails_admin中。 根据这个线程 ,rails_admin应该看到我的自定义方法,因为“RailsAdmin :: ApplicationControllerinheritance自你的:: ApplicationController”。 有关为什么会发生这种情况以及如何让paper_trail存储用户ID的任何想法?

Rails 4 Racing / Concurrency。 避免死锁

我目前在Sidekiq-Unique-Jobs和Sidekiq-Status的帮助下使用Sidekiq在我的应用程序上执行任务。 工人执行的工作很小,几乎总是立即执行。 (很少或根本没有队列) 我正在“黑客攻击”sidekiq同步执行任务(检查Controller无法找到工作人员创建的对象 ),这些作业很小且执行速度快(通常不到1秒)。 我的应用程序需要同步运行作业并获取其详细信息(记录创建/更新) 随着我使用的“跛脚”解决方案: 20.times do status = Sidekiq::Status::get balance, :exp_status if [“done”].include?(status) break end sleep(0.2) end 创建一个队列并确保通过params(sidekiq-unique-jobs)同一个用户同时执行不超过1个作业我可以避免所有死锁,但是我觉得它应该是一个更好的方法来执行此操作,而不是黑客sidekiq因为它意味着异步执行作业。 问题是 :对于sidekiq是否有任何替代或类似的gem可以限制输入但是默认情况下是同步运行的? 我不能只问控制器Balance.find_or_create_by(user: user, market: market)因为它迟早会给我死锁(记录被同时编辑/操纵/创建)但我觉得这个sidekiq解决方案我从长远来看,使用也不行。 我错过了一些基本的东西吗? 如何确保通过中间件或类似的东西不会同时执行重复的参数/动作以避免死锁?

params.require()。permit不能按预期工作

我有这个控制器 class PeopleController < ApplicationController def new @person = Person.new @person.phones.new end # this is the action that gets called by the form def create render text: person_params.inspect # @person = Person.new(person_params) # @person.save # redirect_to people_path end def index @person = Person.all end private def person_params params.require(:person).permit(:name, phones_attributes: [ :id, :phone_number ]) end end […]

在RAILS 4中通过Ajax提交表单后,如何更新视图模板?

我试图在轨道中围绕ajax表单并在我的表单上使用Remote => True。 现在这个工作,当我点击添加新主题。 以下将发生 1.form partial将被附加到正文(这里面有表格)2.Bootstrap Modal将在里面显示表格3.一旦我点击提交,模态将消失,数据将被存储(成功) 我的问题是原始的Index.html.erb视图现在是陈旧的,因为数据插入到我的数据库中,视图仍然显示旧数据。 一旦表单通过ajax成功提交后,如何触发我的视图更新? 谢谢!! 我的subject.rb控制器 def new @subject = Subject.new({:name => “Default”}) @subject_count= Subject.count + 1 end def create @subject = Subject.new(subject_params) if @subject.save flash[:toastr] = [“success”,’Subject #{@subject.name} successfully created’] respond_to do |format| format.html {redirect_to(:action => “index”)} format.js end else @subject_count= Subject.count+1 render(‘new’) end end 这是我的索引视图 <tr class="”> […]

如何在WEBrick中的Rails控制台中显示SQL语句?

Rails WEBrick显示任何ActiveRecord活动的原始SQL语句。 如何在控制台中启用它?

将rails mongodb应用程序部署到heroku时“预编译资产失败”

我正在尝试使用mongodb部署rails应用程序到heroku,但不断收到错误: NoMethodError: undefined method `active_record’ for # … Precompiling assets failed. 在问之前我已经尝试过所有内容,例如以下解决方案 – ( Heroku预编译资产失败 , Ruby on Rails预编译资产失败 )但我仍然无法使其工作 1.当我创建应用程序时,我使用-O选项跳过活动记录: rails new app -T -O 2.我删除了sqlite3。 这是Gemfile: source ‘https://rubygems.org’ gem ‘rails’, ‘4.1.8’ gem ‘sass-rails’, ‘~> 4.0.3’ gem ‘uglifier’, ‘>= 1.3.0’ gem ‘coffee-rails’, ‘~> 4.0.0’ gem ‘jquery-rails’ gem ‘turbolinks’ gem ‘jbuilder’, ‘~> 2.0’ gem ‘sdoc’, […]

模型中的酉常数

我有一个使用Mongoid的非常简单的模型。 我已经添加了使用Redcarpet解析MD并存储它。 但是在update_attributes期间,它会抛出exception。 运行模型并通过rails c运行更新工作正常。 class Post include Mongoid::Document field :contents_markdown field :contents key :title before_create :markdown before_save :markdown protected def markdown if self.contents_markdown self.contents = Redcarpet.new(self.contents_markdown).to_html.html_safe end end end 这是控制器爆炸了。 def update @post = Post.find(params[:id]) respond_to do |format| if @post.update_attributes(params[:post]) format.html { redirect_to @post, notice: ‘Post was successfully updated.’ } format.json { head :ok […]

仅播放top audio_tag按钮

我开始在我的网站上播放音频; 我以前在我的一个视图中实现了一个带有字形按钮的audio_tag。 在另一个视图中,我正在尝试列出我的所有单词对象,并且我希望有一个按钮来播放每个相关的音频。 截至目前,此function仅适用于此视图中列出的第一个单词对象。 如何在按钮中为视图中的所有对象播放声音? 课程显示视图: Vocabulary () application.js中: // This is a manifest file that’ll be compiled into application.js, which will include all the files // listed below. // // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts, // or any plugin’s vendor/assets/javascripts directory can be referenced here using a relative path. // // […]