Как отобразить атрибут модели в текстовой области только для чтения - PullRequest
0 голосов
/ 07 мая 2020

В качестве фона я использую Ruby on Rails с гемом Devise. Одним из атрибутов Users является строка с именем bio. Моя цель - сделать так, чтобы на странице профиля отображалась биография в текстовом поле только для чтения. Я чувствую, что строки, отображаемые в текстовом поле, создают приятную эстетику c. Я также использую bootstrap.

Контроллер страниц:

def profile
      user=User.all
      respond_to do |format|
        format.html { render :profile, locals: { user: user } }
      end
    end

Код для моего профиля. html .erb

<div class="row">
   <div class="col-5">
      <%= current_user.text_area :bio, readonly: true %>%
   </div>

Я получаю ошибку NoMethodError в профиле Pages # - неопределенный метод `text_area '

1 Ответ

0 голосов
/ 07 мая 2020

Используйте css для достижения того же результата, что и text_area. Поместите свой атрибут current_user.bio в элемент <p> или <div> и укажите ширину c этому элементу, чтобы строка могла разорваться. Например:

<div class="row">
    <div class="col-5">
        <p class='specific-width'> <%= current_user.bio %> </p>
    </div>
</div>

Затем в css файле:

.specific-width{
    width: 30px;
}
...