Ruby on rails RubyonRails不捕捉两部分单词

Ruby on rails RubyonRails不捕捉两部分单词,ruby-on-rails,coffeescript,Ruby On Rails,Coffeescript,我在RubyonRails中工作,但我基本上对此一无所知。实际上,我甚至不知道我在atm b/c上遇到了什么语言的问题。我正在使用的文件有一个“.coffee”结尾 这是我的密码: agentsPerProvince = { Ontario: ['James Laird', 'Bryan Freeman', 'Ahjaz Mussa', 'Vince Anton', 'Michael Capobianco'], Quebec: ['Philippe Simard', 'Michael J

我在RubyonRails中工作,但我基本上对此一无所知。实际上,我甚至不知道我在atm b/c上遇到了什么语言的问题。我正在使用的文件有一个“.coffee”结尾

这是我的密码:

agentsPerProvince = {
  Ontario: ['James Laird', 'Bryan Freeman', 'Ahjaz Mussa', 'Vince Anton', 'Michael Capobianco'],
  Quebec: ['Philippe Simard', 'Michael Jacyk', 'Philippe Breault'],
  Alberta: ['Matt Leggett', 'Cassia Miller', 'Christie Romeril', 'Ryan Jejina'],
  Saskatchewan: ['Matt Leggett', 'Cassia Miller', 'Christie Romeril'],
  Manitoba: ['James Laird', 'Bryan Freeman', 'Ahjaz Mussa', 'Vince Anton', 'Michael Capobianco'],
  British_Columbia: ['Amrita Singh'],
}
问题是,我的web应用程序没有捕捉到“不列颠哥伦比亚”标签。假设发生的情况是,当有人选择“不列颠哥伦比亚”时,单个代理将出现在另一个下拉列表中。它适用于除不列颠哥伦比亚以外的所有其他问题,我认为这是b/c,这是两个词

我尝试了以下方法:

British_Columbia
British-Columbia
BritishColumbia
britishcolumbia

似乎什么都没用。我做错什么了吗?请帮助!

除了带破折号的选项之外,您列出的所有选项都可以正常工作。唯一的要求是它必须是有效的JavaScript符号

不相关,但更规范的是:

agentsPerProvince =
  Ontario: ['James Laird', 'Bryan Freeman', 'Ahjaz Mussa', 'Vince Anton', 'Michael Capobianco']
  Quebec: ['Philippe Simard', 'Michael Jacyk', 'Philippe Breault']
  Alberta: ['Matt Leggett', 'Cassia Miller', 'Christie Romeril', 'Ryan Jejina']
  Saskatchewan: ['Matt Leggett', 'Cassia Miller', 'Christie Romeril']
  Manitoba: ['James Laird', 'Bryan Freeman', 'Ahjaz Mussa', 'Vince Anton', 'Michael Capobianco']
  British_Columbia: ['Amrita Singh']
注意:没有周围的
{}
(冗余)和尾随的逗号(可选)


很可能您的代码没有被重新加载。

您正在处理的是一个
CoffeeScript
文件,基本上是一个类似ruby的Javascript版本。您可以在这里尝试:

您应该做的可能是将
不列颠哥伦比亚省
标记如下:

'British Columbia': ['Amrita Singh'],
而不是

British_Columbia: ['Amrita Singh'],
或任何其他字符组合

试试这个:

agentsPerProvince = { 
  Ontario: ['James Laird', 'Bryan Freeman', 'Ahjaz Mussa', 'Vince Anton', 'Michael Capobianco'],
  Quebec: ['Philippe Simard', 'Michael Jacyk', 'Philippe Breault'],
  Alberta: ['Matt Leggett', 'Cassia Miller', 'Christie Romeril', 'Ryan Jejina'],
  Saskatchewan: ['Matt Leggett', 'Cassia Miller', 'Christie Romeril'],
  Manitoba: ['James Laird', 'Bryan Freeman', 'Ahjaz Mussa', 'Vince Anton', 'Michael Capobianco'],
  'British Columbia': ['Amrita Singh'],
}

谢谢Brad.Ya,我最后只做了“不列颠哥伦比亚省”而没有下划线,这很有效。顺便说一句,.coffee是CoffeeScript,一种可以转换成Javascript的语言。没有理由一个有效的JS符号不能作为键;问题可能出在其他地方。如果你将我的示例加载到CS站点并执行
alert JSON.stringify agentsPerProvince、 null,2
您可以看到它是完全有效的。我打赌他正在试图搜索
不列颠哥伦比亚省
散列中的
键,该散列是从其他下拉列表中输入的。实际上,您可以像在ruby中一样在CoffeeScript散列中留下一个尾随逗号。@marzapower并非所有浏览器都处理尾随逗号很好(看着你,老IE)。CoffeScript必须编译成Javascript,在生成的Javascript代码中,逗号不会出现。试试看:@marzapower哦,好吧。还是很难看,尽管它们一开始是可选的。