Как вызвать имя столбца, начинающегося с номера с Active Record Rails? - PullRequest
1 голос
/ 08 июля 2019

Если имя столбца в БД с именем 2way в таблице posts,

post = Post.first
post.2way

произошло:

SyntaxError: unexpected tINTEGER, expecting '(
post.2way
      ^

Попытка Post.'2way' все еще не работает.

Ответы [ 4 ]

1 голос
/ 08 июля 2019

Это поможет вам:

Post.last.send("2way")

Post.all.pluck("2way") #this will work if your column name in your migration file defined as a string in quotes, for example, t.integer '2way'

Если вы хотите установить значение: post.public_send('2way=', value)

Дайте мне знать, если это сработало.

1 голос
/ 08 июля 2019

Как сказано в NN796, вы можете установить значение с помощью метода public_send:

post.public_send('2way=', value)
1 голос
/ 08 июля 2019

Имя столбца не может начинаться с цифры.Поэтому, когда вы определяете свою миграцию, вы можете сделать это следующим образом:

t.integer '2way'

Дайте мне знать, если это сработало.

0 голосов
/ 09 июля 2019

вы можете попробовать следующим образом:

post.try(:2way)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...