1

Deviseに精通していて、その機能に精通している方は、config/localesディレクトリにあるDevise.en.ymlファイルの実用的な知識が必要です。このファイルは基本的に、ログイン時にエラーメッセージを作成します。つまり、間違ったパスワードを入力すると、「invalid:'Invalidemailorpassword。」のようなエラーメッセージが表示されます。

私の場合、それは機能していません。間違ったユーザー名/パスワードを入力しても何も起こらず、ログインしませんが、フラッシュメッセージは表示されません。

私のdevise.en.ymlファイルの内容はすべて緑色です。これがどのように表示されるかはわかりませんが、コードに何か問題があるのではないかと思いますか?しかし、それが実際の理由である場合とそうでない場合があります。

どのコントローラーまたはコンテンツを含めるかわからないので、質問したらすぐにOPを更新します。

これが私のアプリのdevise.en.ymlファイルです:

  en:
  errors:
  messages:
  not_found: "not found"
  already_confirmed: "was already confirmed"
  not_locked: "was not locked"

  devise:
    failure:
      unauthenticated: 'You need to sign in or sign up before continuing.'
      unconfirmed: 'You have to confirm your account before continuing.'
      locked: 'Your account is locked.'
      invalid: 'Invalid email or password.'
      invalid_token: 'Invalid authentication token.'
      timeout: 'Your session expired, please sign in again to continue.'
      inactive: 'Your account was not activated yet.'
    sessions:
      signed_in: 'Signed in successfully.'
      signed_out: 'Signed out successfully.'
    passwords:
      send_instructions: 'You will receive an email with instructions about how to reset your password in a few minutes.'
      updated: 'Your password was changed successfully. You are now signed in.'
    confirmations:
      send_instructions: 'You will receive an email with instructions about how to confirm your account in a few minutes.'
      confirmed: 'Your account was successfully confirmed. You are now signed in.'
    registrations:
      signed_up: 'You have signed up successfully.'
      updated: 'You updated your account successfully.'
      destroyed: 'Bye! Your account was successfully cancelled. We hope to see you again soon.'
    unlocks:
      send_instructions: 'You will receive an email with instructions about how to unlock your account in a few minutes.'
      unlocked: 'Your account was successfully unlocked. You are now signed in.'
    mailer:
      confirmation_instructions: 'Confirmation instructions'
      reset_password_instructions: 'Reset password instructions'
      unlock_instructions: 'Unlock Instructions'
4

2 に答える 2

0

私はあなたがこのコードをに追加しなければならないと推測していますapp/views/layouts/application.html.erb

  <% if notice %>
    <p class="notice"><%= notice %></p>
  <% end %>

  <% if alert %>
    <p class="alert"><%= alert %></p>
  <% end %>
于 2013-02-27T20:40:52.170 に答える
0

それが本当の問題かどうかはわかりませんが、アイデアとしてです。

Yamlはスコーピングにインデントを使用します。ここでコピーして貼り付けたときに壊れたかどうかはわかりませんが、壊れていない場合は、devise.en.ymlファイルが次のようになっている可能性があります。

en:
  errors: 
    messages:
      not_found: "not found"
      ...
  devise:
    failure:
       ...

あなたの質問では、それが今どのように見えるかではありません。また、識別にタブではなくスペースを使用していることを確認してください。

于 2013-02-27T21:07:41.937 に答える