[RUBY] [Rails] Erreur de syntaxe, tSTRING_END inattendue, attendue ""

syntax error, unexpected tSTRING_END, expecting ' '

seed.rb


StaffMember.create!(
  email: "[email protected]",
  family_name: "Yamada",
  given_name: "Taro",
  family_name_kana: "Yamada",
  given_name_kana: "Taro",
  password: "password",
  start_date: Date.today
)

family_names = %w {
Sato:Sato:sato
Suzuki:Suzuki:suzuki
Takahashi:Takahashi:takahashi
Tanaka:Tanaka:tanaka
}

given_names = %w {
Jiro:Jiro:jiro
Saburo:Sabrow:saburo
Matsuko:Matsuko:matsuko
Takeko:Takeko:takeko
Umeko:Umeko:umeko
}

20.times do |n|
  fn = family_names[n%4].split(":")
  gn = given_names[n%5].split(":")

  StaffMember.create!(
    email: "#{fn[2]}.#{gn[2]}@example.com",
    family_name: fn[0],
    given_name: gn[0],
    family_name_kana: fn[1],
    given_name_kana: gn[1],
    password: "password",
    start_date: (100-n).days.ago.to_date,
    end_date: n == 0 ? Date.today : nil,
    suspended: n == 1
  )
end

Si vous écrivez du code comme ci-dessus, syntax error, unexpected tSTRING_END, expecting ' ' Sortit de. Avez-vous oublié d'ajouter "" ou "dans la chaîne? J'ai pensé, mais il ne semble y avoir aucun problème.

Cela a pris beaucoup de temps, mais cela a été résolu. Une erreur s'est produite car il y avait un espace entre% w

seed.rb


#%Erreur car il y avait un espace demi-largeur après w
given_names = %w {
Jiro:Jiro:jiro
Saburo:Sabrow:saburo
Matsuko:Matsuko:matsuko
Takeko:Takeko:takeko
Umeko:Umeko:umeko
}

Corrigez cela et résolvez

seed.rb


StaffMember.create!(
  email: "[email protected]",
  family_name: "Yamada",
  given_name: "Taro",
  family_name_kana: "Yamada",
  given_name_kana: "Taro",
  password: "password",
  start_date: Date.today
)

family_names = %w{
Sato:Sato:sato
Suzuki:Suzuki:suzuki
Takahashi:Takahashi:takahashi
Tanaka:Tanaka:tanaka
}

given_names = %w{
Jiro:Jiro:jiro
Saburo:Sabrow:saburo
Matsuko:Matsuko:matsuko
Takeko:Takeko:takeko
Umeko:Umeko:umeko
}

20.times do |n|
  fn = family_names[n%4].split(":")
  gn = given_names[n%5].split(":")

  StaffMember.create!(
    email: "#{fn[2]}.#{gn[2]}@example.com",
    family_name: fn[0],
    given_name: gn[0],
    family_name_kana: fn[1],
    given_name_kana: gn[1],
    password: "password",
    start_date: (100-n).days.ago.to_date,
    end_date: n == 0 ? Date.today : nil,
    suspended: n == 1
  )
end

Avis avec des points forts de la syntaxe! Je l'ai senti, mais je n'ai pas compris.

Si vous insérez un espace dans la notation% de Ruby, une erreur se produira comme ceci. C'était l'apprentissage d'aujourd'hui.

Recommended Posts

[Rails] Erreur de syntaxe, tSTRING_END inattendue, attendue ""
[Rails] Erreur de validation inattendue dans l'appareil
[Révision] Lors de la création d'une application Web avec Rails, erreur de syntaxe, inattendue ')', expecting => ...]}% ","% # {params [: content]}% "]) ...
[Rails] Solution pour "Uglifier :: Erreur: caractère inattendu" ""
[Note] Liste des erreurs de rails
Erreur de routage Catch Rails
Erreur d'installation de Mac Rails
Erreur de rails Bibliothèque non chargée
Erreur lors de l'utilisation des rails capybara
[rails] erreur lors de l'installation du périphérique
erreur de syntaxe [chaque erreur de fin]
[Rails] About Uglifier :: Erreur: jeton inattendu: au moment du déploiement