我有一个PetsController,其中设置了一条flash消息.像这样的东西:
class PetsController
...
def treat_dog
#do somthing
flash[:success] = 'Your dog is being treated.'
end
...
end
Run Code Online (Sandbox Code Playgroud)
此控制器属于Admin,因此它位于:app/controllers/admin/pets_controller.rb.我将使用I18n,所以我用控制器替换了字符串t('controllers.admin.pet.treated'),然后,我写了这个yml:
en:
controllers:
admin:
pet:
treated: "Your dog is being treated."
Run Code Online (Sandbox Code Playgroud)
位于:config/locales/controllers/admin/pet/en.yml它没有用.我试图找到它config/locales/controllers/admin/pets/en.yml,config/locales/controllers/admin/en.yml
config/locales/controllers/en.yml
并且没有一个工作,没有找到翻译.
如何使用此控制器的翻译?
我正在研究一个Rails项目,我想使用file_field_tag,但我希望它看起来像一个按钮.
我有这个:
使用此代码:
= file_field_tag 'attachment'
Run Code Online (Sandbox Code Playgroud)
我想要这样的东西:
我试过这个:
= file_field_tag 'attachment', class: 'btn btn-large btn-warning'
Run Code Online (Sandbox Code Playgroud)
但我得到了这个:
如何更改file_field_tag的外观以使其看起来像一个按钮?
我正在使用一个API,它返回这样的日期2016-05-05T20:59:31.000Z。这种格式对我来说是新的,因此,此日期格式的名称是什么?而且,我该如何在Ruby中对其进行处理?
这个问题是“什么是 rubyGems env 中的“用户安装目录” ”的第二部分,但最终没有得到解答。
现在我想知道为什么我的情况'USER INSTALLATION DIRECTORY与 Ruby 版本不匹配。另一个问题是bundle install默认情况下使用什么选项--user-install?
rvm list:
* ruby-2.5.0 [ x86_64 ]
=> ruby-2.5.1 [ x86_64 ]
ruby-2.6.0-preview1 [ x86_64 ]
Run Code Online (Sandbox Code Playgroud)
gem env:
RubyGems Environment:
- RUBYGEMS VERSION: 2.7.7
- RUBY VERSION: 2.5.1 (2018-03-29 patchlevel 57) [x86_64-linux]
- INSTALLATION DIRECTORY: /home/ivan/.rvm/gems/ruby-2.5.1
- USER INSTALLATION DIRECTORY: /home/ivan/.gem/ruby/2.5.0
...
Run Code Online (Sandbox Code Playgroud) 我正在开发一个 Rails 项目,其中我使用 Rspec 与 Capybara 进行单元测试以访问页面。我有这个真实的网址:课程 IDhttp://localhost:3000/teacher/courses/2778/audience在哪里2778,此页面显示了登录的教师该课程中的学生(观众)。
我routes.rb的这个资源看起来像这样:
...
namespace :teacher do
...
resources :courses, except: [:delete] do
member do
...
get :audience
...
end
end
end
Run Code Online (Sandbox Code Playgroud)
在我的单元测试中,我已经以特定教师的身份登录,并且有一个@course代表相关课程的变量,现在,我需要直接转到该网址或路径。我已经尝试过:
visit '/teacher/courses/@course.id/audience'
visit '/teacher/courses/' + @course.id + '/audience'
visit '/teacher/courses/#{@course.id}/audience'
Run Code Online (Sandbox Code Playgroud)
但这些都没有奏效。
我怎样才能访问这条路径?