小编Ivá*_*ero的帖子

如何在Rails中使用控制器中的I18n

我有一个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 并且没有一个工作,没有找到翻译.

如何使用此控制器的翻译?

controller ruby-on-rails internationalization rails-i18n

12
推荐指数
1
解决办法
9258
查看次数

将file_field_tag外观更改为按钮外观

我正在研究一个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的外观以使其看起来像一个按钮?

css ruby-on-rails button filefield twitter-bootstrap

4
推荐指数
1
解决办法
3374
查看次数

yyyy-mm-ddThh:mm:ss.000Z Ruby中的日期格式

我正在使用一个API,它返回这样的日期2016-05-05T20:59:31.000Z。这种格式对我来说是新的,因此,此日期格式的名称是什么?而且,我该如何在Ruby中对其进行处理?

ruby time datetime ruby-on-rails date-formatting

1
推荐指数
1
解决办法
1969
查看次数

为什么“用户安装目录”与 Ruby 版本不匹配?

这个问题是“什么是 ruby​​Gems 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)

ruby rubygems rvm

1
推荐指数
1
解决办法
436
查看次数

使用 Capybara on Rails 访问路径传递 id

我正在开发一个 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)

但这些都没有奏效。

我怎样才能访问这条路径?

ruby rspec ruby-on-rails path capybara

0
推荐指数
1
解决办法
5757
查看次数