<%= cktext_area @object, :content %>
<%= form_for @object do |form| %>
<%= form.cktext_area :content %>
<% end %>
# subcategory.rb
scope :recent, -> (count = 2) { limit(count) }
# category.rb
has_many :recent_subcategories, -> { recent }, class_name: Subcategory
# если не хотите scope в subcategoty
has_many :recent_subcategories, -> { limit(2) }, class_name: Subcategory
# получите
@categories[0].recent_subcategories
module SuperString
refine Object do
def ii
puts "ii"
end
end
end
using SuperString
5.ii
"r".ii
ii
class User < ApplicationRecord
def names_list
names.join(', ')
end
def names_list=(new_value)
self.names = new_value.split(/,\s+/)
end
end
<%= f.text_field :names_list %>
params.require(:user).permit(:names_list)
# routes.rb
get '/messages/new/(:parent_id)', to: 'message#new', as: :new_message
# messages_controller.rb
def new
@Message = Message.new(parent_id: params[:parent_id])
end
def create
# можно(нужно) вынести в приватный метод
if params[:message][:parent_id]
parent = Message.find(params[:message].delete(:parent_id))
@messaage = parent.children.build(message_params)
else
@messaage = Message.new(message_params)
end
if @message.save
flash[:success] = 'Your message was successfully added!'
redirect_to root_url
else
render 'new'
end
end
# _form.html.erb
# Добавить
<%= f.hidden_field :parent_id %>
# show.html.erb
<%= link_to 'reply', new_message_path(message.id) %>