проверка, существует ли @ variable.method? - PullRequest
2 голосов
/ 10 декабря 2011

Я использую datamapper для хранения в базе данных. сразу после переноса БД ни один из методов не существует, так как нет значений

<input type="text" name="seed" value="<%= @seed.value unless @seed.respond_to(value)? %>"

Ответы [ 2 ]

7 голосов
/ 10 декабря 2011

Я не слишком уверен, что следую вашему вопросу, но это выглядит так:

@seed.value unless @seed.respond_to(value)?

Должно быть так:

@seed.value if @seed.respond_to?(:value)

respond_to? - это имяметод, поэтому поставьте знак вопроса в правильном месте.Кроме того, вы хотите передать Symbol :value вместо вызова переменной / метода value в качестве аргумента.

Наконец, это должно быть if, а не unless.

0 голосов
/ 10 декабря 2011

Возможно, вы захотите отладить переменную, чтобы увидеть, какую информацию (если она есть) она содержит

<%= debug @seed %>
...