{"id":176999,"date":"2013-04-17T14:31:04","date_gmt":"2013-04-17T10:31:04","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=176999"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=176999","title":{"rendered":"<span class=\"post_title\">Rear \u2014 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u0439 backend \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043b\u044f ActiveRecord, DataMapper \u0438 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e<\/span>"},"content":{"rendered":"<div class=\"content html_format\">   \t\u041e\u0447\u0435\u043d\u044c \u0447\u0430\u0441\u0442\u043e, \u043f\u043e\u0447\u0442\u0438 \u0432\u0441\u0435\u0433\u0434\u0430, \u0445\u043e\u0447\u0435\u0442\u0441\u044f \u0441\u043e\u043a\u0440\u0430\u0442\u0438\u0442\u044c \u0434\u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c\u0430 \u0432\u0440\u0435\u043c\u044f\/\u0443\u0441\u0438\u043b\u0438\u044f \u043d\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u00ab\u0430\u0434\u043c\u0438\u043d\u043a\u0438\u00bb.<\/p>\n<p>  \u0422\u0435\u043c \u0431\u043e\u043b\u0435\u0435 \u043a\u043e\u0433\u0434\u0430 \u0443\u0436\u0435 \u0432\u0441\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u0432 \u0441\u0442\u0440\u043e\u044e \u0438 \u0445\u043e\u0447\u0435\u0442\u0441\u044f \u0434\u0430\u0442\u044c \u043a\u043b\u0438\u0435\u043d\u0442\u0443 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u043d\u0438\u043c\u0438,<br \/>  \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u0437\u0430\u043f\u0438\u0441\u0438, \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u0443\u0434\u0430\u043b\u044f\u0442\u044c, \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u0438\u0442\u0434.<\/p>\n<p>  \u041e\u0431\u044b\u0447\u043d\u043e \u043d\u0430 \u0440\u0443\u0442\u0438\u043d\u043d\u044b\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u044d\u0442\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u0443\u0445\u043e\u0434\u0438\u0442 \u043d\u0435\u043f\u0440\u043e\u0441\u0442\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043c\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438\/\u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432.<\/p>\n<p>  \u041a\u0440\u043e\u043c\u0435 \u0441\u043b\u0443\u0447\u0430\u044f \u043a\u043e\u0433\u0434\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0443\u0436\u0435 \u0433\u043e\u0442\u043e\u0432\u044b\u0435 \u043d\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u0438.<\/p>\n<p>  \u0418\u043c\u0435\u043d\u043d\u043e \u043a \u0442\u0430\u043a\u0438\u043c \u043d\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u043c \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u0438 Rear.<\/p>\n<p>  \u0421 \u0435\u0433\u043e \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u0439 \u0430\u0434\u043c\u0438\u043d \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u043e\u0439 \u2014 <b>include Rear<\/b><\/p>\n<p>  \u0421\u043e\u0433\u043b\u0430\u0441\u0435\u043d, \u0437\u0432\u0443\u0447\u0438\u0442 \u043a\u0430\u043a SEO-\u0448\u043d\u043e\u0435 \u0437\u0430\u044f\u0432\u043b\u0435\u043d\u0438\u0435, \u043d\u043e \u0442\u0435\u043c \u043d\u0435 \u043c\u0435\u043d\u0435\u0435 \u044d\u0442\u043e \u0442\u0430\u043a.<\/p>\n<p>  \u041f\u043e\u043b\u043d\u044b\u0439 \u0440\u0430\u0437\u0431\u043e\u0440 \u043f\u043e\u043b\u0451\u0442\u0430 \u043f\u043e\u0434 \u043a\u0430\u0442\u043e\u043c.<\/p>\n<p>  \u0410 \u0434\u043b\u044f \u043d\u0435\u0442\u0435\u0440\u043f\u0435\u043b\u0438\u0432\u044b\u0445 \u2014 <a href=\"http:\/\/rear.rbho.me\/\"><b>\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0434\u0435\u043c\u043e<\/b><\/a><\/p>\n<p>  <a name=\"habracut\"><\/a><\/p>\n<p>  \u0414\u043e\u043f\u0443\u0441\u0442\u0438\u043c \u0443 \u043d\u0430\u0441 \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u043c\u043e\u0434\u0435\u043b\u044c <code>Article<\/code> \u0438 \u043d\u0443\u0436\u043d\u043e \u0437\u0430-CRUD-\u0438\u0442\u044c \u0437\u0430\u043f\u0438\u0441\u0438:<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/storage2\/777\/86f\/528\/77786f528e288c2d2207b8ee9929b015.png\"\/><\/p>\n<p>  \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435:<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/storage2\/96b\/214\/698\/96b21469821b14e1b7e3a76a38147377.png\"\/><\/p>\n<p>  \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0432\u043e\u0442 \u0442\u0430\u043a\u043e\u0439 \u0432\u043e\u0442 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441:<\/p>\n<p>  <b>\u041f\u0430\u043d\u0435\u043b\u044c \u043e\u0431\u0437\u043e\u0440\u0430<\/b><\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/storage2\/055\/3ed\/16c\/0553ed16ce3722383fcef662c9e7f69c.png\"\/><\/p>\n<p>  <b>\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/b><\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/storage2\/435\/b56\/afb\/435b56afb193ab33f7c3a9a6f1320e70.png\"\/><\/p>\n<p>  \u0423\u0434\u043e\u0431\u043d\u043e, \u043d\u043e \u043d\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u043d\u043e.<\/p>\n<p>  \u0412\u043e \u043f\u0435\u0440\u0432\u044b\u0445 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c HTML \u0432 textarea \u043a\u0430\u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u043d\u0435\u0446\u0435\u043b\u0435\u0441\u043e\u043e\u0431\u0440\u0430\u0437\u043d\u043e.<br \/>  \u0414\u043b\u044f \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u0438 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c <code>rear-ckeditor<\/code> \u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c <b>input :content, :ckeditor<\/b>, \u0447\u0442\u043e \u043f\u0440\u0435\u0432\u0440\u0430\u0442\u0438\u0442 textarea \u0432 \u0443\u0434\u043e\u0431\u043d\u044b\u0439 Rich Text Editor.<br \/>  \u041c\u043e\u0436\u043d\u043e \u0442\u0430\u043a\u0436\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c <code>rear-ace<\/code> \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c <b>input :content, :ace<\/b> \u0435\u0441\u043b\u0438 \u043d\u0443\u0436\u0435\u043d Ace \u0432\u043c\u0435\u0441\u0442\u043e CKEditor.<\/p>\n<p>  \u0412\u043e \u0432\u0442\u043e\u0440\u044b\u0445 \u043d\u0430\u0434\u043e \u0434\u0430\u0442\u044c \u043b\u044e\u0434\u044f\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438 \u0437\u0430\u043f\u0438\u0441\u0435\u0439.<br \/>  \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c <b>filter :name<\/b>.<\/p>\n<p>  \u0412 \u0442\u0440\u0435\u0442\u0438\u0445 \u043c\u043e\u0434\u0435\u043b\u0438 \u0440\u0435\u0434\u043a\u043e \u0431\u044b\u0432\u0430\u044e\u0442 \u043e\u0434\u0438\u043d\u043e\u043a\u0438, \u043e\u0431\u044b\u0447\u043d\u043e \u043e\u043d\u0438 \u0438\u0434\u0443\u0442 \u0441 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044f\u043c\u0438.<br \/>  \u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 <code>Article<\/code> \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 <code>Category<\/code>, \u0442\u0430\u043a \u0447\u0442\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u043c\u043e\u0434\u0435\u043b\u044c <code>Category<\/code> \u0430 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u0441\u0434\u0435\u043b\u0430\u0435\u0442 <code>Rear<\/code>:<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/storage2\/422\/dda\/883\/422dda8834f23f4146a07b3edfc020e7.png\"\/><\/p>\n<p>  \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c:<\/p>\n<p>  \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0444\u0438\u043b\u044c\u0442\u0440:<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/storage2\/958\/4db\/baf\/9584dbbaf0c5b1966c679620e69edc55.png\"\/><\/p>\n<p>  Rich Text Editor:<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/storage2\/a6b\/37d\/d91\/a6b37dd918a38bffb2d11681655b9e22.png\"\/><\/p>\n<p>  \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439:<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/storage2\/0c9\/39c\/674\/0c939c6740248fa502588480ff79510d.png\"\/><\/p>\n<p>  \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c Rear \u043c\u043e\u0436\u043d\u043e \u0447\u0435\u0440\u0435\u0437 <b>gem install rear<\/b><\/p>\n<p>  \u041f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0443 \u0441\u0435\u0431\u044f \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0432 \u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0432 \u043a\u043e\u0434 \u043d\u0438\u0436\u0435.<br \/>  \u041d\u0430\u0432\u0435\u0440\u043d\u043e\u0435 \u043d\u0435 \u0441\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0447\u0430\u0442\u044c \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u0442\u0430\u043a\u0436\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c <code>data_mapper<\/code> \u0438 <code>dm-mysql-adapter<\/code><br \/>  \u0438 \u0434\u043e \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c <b>DataMapper.auto_migrate!<\/b> \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0442\u0430\u0431\u043b\u0438\u0446, \u043f\u043e\u0441\u043b\u0435 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u0430\u043c\u043e\u0439 \u0431\u0430\u0437\u044b \u0440\u0430\u0437\u0443\u043c\u0435\u0435\u0442\u0441\u044f.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"ruby\">require 'rear' require 'rear-ckeditor' require 'data_mapper' require 'dm-mysql-adapter'  class Article   include DataMapper::Resource   include Rear # \u0432\u0435\u0436\u043b\u0438\u0432\u043e \u043f\u0440\u043e\u0441\u0438\u043c Rear \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441   input  :content, :ckeditor   filter :name    property :id,      Serial   property :name,    String   property :content, Text   has n, :categories, through: Resource end  class Category   include DataMapper::Resource    property :id,   Serial   property :name, String   has n, :articles, through: Resource end  DataMapper.finalize DataMapper.setup :default, 'mysql:\/\/dev@localhost\/dev__rear_habrahabr'  Rear.run server: :Thin, port: 2424 <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<h1>\u0410 \u043e\u0442\u0441\u044e\u0434\u0430 \u043f\u043e \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435.<\/h1>\n<p>  <b>\u0427\u0442\u043e \u044d\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u0438 \u0441 \u0447\u0435\u043c \u0435\u0433\u043e \u0435\u0434\u044f\u0442?<\/b><\/p>\n<p>  \u042d\u0442\u043e \u0442\u043e\u0442-\u0436\u0435 <code>ActiveAdmin<\/code> \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0435 \u0434\u043b\u044f Rails \u0430 \u0434\u043b\u044f <a href=\"http:\/\/habrahabr.ru\/post\/139872\/\">Espresso Framework<\/a>.<\/p>\n<p>  <b>\u041d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0435\u0430\u043b\u044c\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c <code>Rear<\/code> \u0432 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435?<\/b><\/p>\n<p>  Rear \u043d\u0438\u0447\u0435\u0433\u043e \u043e\u0442 \u0432\u0430\u0441 \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442, \u043e\u043d \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e \u0438\u043d\u0442\u0435\u0433\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441 \u043d\u043e\u0432\u044b\u043c \u0438\u043b\u0438 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c.<br \/>  \u041e\u043d \u0432\u0441\u0435\u0433\u043e-\u043b\u0438\u0448\u044c \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u0432 \u043d\u0443\u0436\u043d\u044b\u0435 \u043c\u043e\u0434\u0435\u043b\u0438, \u043d\u0438\u043a\u0430\u043a \u043d\u0435 \u0432\u043b\u0438\u044f\u044f \u043d\u0430 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u0447\u0430\u0441\u0442\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.<\/p>\n<p>  <b>\u041d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0435\u0430\u043b\u044c\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043f\u043e\u0434 \u0441\u0432\u043e\u0438 \u043d\u0443\u0436\u0434\u044b?<\/b><\/p>\n<p>  \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e Rear \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0442\u043e\u0442-\u0436\u0435 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.<br \/>  \u0415\u0441\u043b\u0438 \u043d\u0443\u0436\u0435\u043d custom \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0448\u0430\u0431\u043b\u043e\u043d\u044b \u043a \u0441\u0435\u0431\u0435 \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0438 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u0443\u0435\u043c.<br \/>  \u0422\u0435\u043f\u0435\u0440\u044c \u0432\u0441\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u0431\u0443\u0434\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u0415\u0441\u043b\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430,<br \/>  \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u043c\u0435\u043d\u0435\u043c \u043c\u043e\u0434\u0435\u043b\u0438 \u0438 \u0441\u0442\u0430\u0432\u0438\u043c \u0442\u0443\u0434\u0430 \u043d\u0443\u0436\u043d\u044b\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u044b.<\/p>\n<h1>\u041f\u0440\u0438\u0441\u0442\u0443\u043f\u0430\u0435\u043c \u043a \u0443\u0441\u0432\u043e\u0435\u043d\u0438\u044e<\/h1>\n<p>  \u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0443\u0436\u043d\u043e \u0432\u0441\u0435\u0433\u043e-\u043b\u0438\u0448\u044c \u00ab\u0438\u043d\u043a\u043b\u0443\u0434\u0438\u0442\u044c\u00bb Rear \u0432 \u043d\u0443\u0436\u043d\u044b\u0435 \u043c\u043e\u0434\u0435\u043b\u0438:<\/p>\n<pre><code class=\"ruby\">class Foo &lt; ActiveRecord::Base   include Rear end <\/code><\/pre>\n<p>  <b>primary_key<\/b><\/p>\n<p>  \u0414\u0430\u043b\u044c\u0448\u0435, \u0434\u043b\u044f \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b, Rear-\u0443 \u043d\u0443\u0436\u0435\u043d \u043f\u0435\u0440\u0432\u0438\u0447\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043c\u043e\u0434\u0435\u043b\u0438.<br \/>  \u041e\u043d \u043f\u043e\u043f\u044b\u0442\u0430\u0435\u0442\u0441\u044f \u0441\u0430\u043c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c pkey \u0438 \u043e\u0431\u044b\u0447\u043d\u043e \u043e\u043d \u0441 \u044d\u0442\u0438\u043c \u0441\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f.<br \/>  \u0414\u043b\u044f \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0441\u043b\u0443\u0447\u0430\u0435\u0432 \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u0434\u0430\u0442\u044c pkey \u0432 \u0440\u0443\u0447\u043d\u0443\u044e.<br \/>  \u0414\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u044d\u0442\u043e \u0447\u0435\u0440\u0435\u0437 `primary_key`:<\/p>\n<pre><code class=\"ruby\">primary_key :ItemID <\/code><\/pre>\n<p>  <b>order_by<\/b><\/p>\n<p>  \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e Rear \u0432\u044b\u0432\u0435\u0434\u0435\u0442 \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 \u0442\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435 \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u043d\u0438 \u0432\u044b\u0434\u0430\u044e\u0442\u0441\u044f ORM.<\/p>\n<p>  \u041a\u043e\u0433\u0434\u0430 \u043d\u0443\u0436\u043d\u043e \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u044c \u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435, \u0437\u0430\u0434\u0430\u0451\u043c \u0441\u0442\u043e\u043b\u0431\u0446\u044b \u0447\u0435\u0440\u0435\u0437 `order_by`:<\/p>\n<p>  `ActiveRecord`:<\/p>\n<pre><code class=\"ruby\">  order_by 'name, id DESC' <\/code><\/pre>\n<p>  `DataMapper`:<\/p>\n<pre><code class=\"ruby\">  order_by :name, :id.desc <\/code><\/pre>\n<p>  <b>items_per_page<\/b><\/p>\n<p>  \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e Rear \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u043f\u043e \u0434\u0435\u0441\u044f\u0442\u044c \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u043d\u0430 \u043a\u0430\u0436\u0434\u0443\u044e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443.<\/p>\n<p>  \u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0447\u0435\u0440\u0435\u0437 `items_per_page`:<\/p>\n<pre><code class=\"ruby\">  items_per_page 50 <\/code><\/pre>\n<p>  <b>menu_label \/ menu_position \/ menu_group<\/b><\/p>\n<p>  \u0414\u043b\u044f \u043b\u0451\u0433\u043a\u043e\u0439 \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0438 \u043f\u043e \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u044b\u043c \u043c\u043e\u0434\u0435\u043b\u044f\u043c Rear \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u0432\u0435\u0440\u0445\u043d\u0435\u0435 \u043c\u0435\u043d\u044e <br \/>  \u0441\u043e \u0441\u043f\u0438\u0441\u043a\u043e\u043c \u0432\u0441\u0435\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439.<\/p>\n<p>  \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0441\u044f \u0438\u043c\u044f \u043c\u043e\u0434\u0435\u043b\u0438, \u043d\u043e \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0447\u0435\u0440\u0435\u0437 `menu_label`:<\/p>\n<pre><code class=\"ruby\">class PageModel &lt; ActiveRecord::Base   include Rear   menu_label :Pages   # ... end <\/code><\/pre>\n<p>  \u041f\u043e\u0437\u0438\u0446\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043c\u043e\u0434\u0435\u043b\u0438 \u0431\u0443\u0434\u0443\u0442 \u0432 \u043f\u043e\u0440\u044f\u0434\u043a\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c `menu_position`, \u043c\u043e\u0436\u043d\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0432\u044b\u0432\u043e\u0434\u0430 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0432 \u043c\u0435\u043d\u044e:<\/p>\n<pre><code class=\"ruby\">class City &lt; ActiveRecord::Base   include Rear   menu_position 100 end  class Country &lt; ActiveRecord::Base   include Rear   menu_position 1000 end  class State &lt; ActiveRecord::Base   include Rear   menu_position 500 end <\/code><\/pre>\n<p>  \u042d\u0442\u043e \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u043c\u0435\u043d\u044e \u0432\u0438\u0434\u0430 `Country | State | City` \u0432\u043c\u0435\u0441\u0442\u043e \u0434\u0435\u0444\u043e\u043b\u0442\u043d\u043e\u0433\u043e `City | Country | State`.<\/p>\n<p>  \u0414\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0447\u0430\u0441\u0442\u043e \u043c\u043e\u0434\u0435\u043b\u0438 \u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u043f\u043e \u0433\u0440\u0443\u043f\u043f\u0430\u043c.<br \/>  \u0413\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u0442\u0430\u043a\u0436\u0435 \u0438 \u0432 \u043c\u0435\u043d\u044e Rear-\u0430, \u0435\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c `menu_group`:<\/p>\n<pre><code class=\"ruby\">class City &lt; ActiveRecord::Base   include Rear   menu_group :Location end  class Country &lt; ActiveRecord::Base   include Rear   menu_group :Location end  class State &lt; ActiveRecord::Base   include Rear   menu_group :Location end <\/code><\/pre>\n<p>  \u042d\u0442\u043e \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u0432\u0441\u0435\u0433\u043e \u043e\u0434\u0438\u043d \u043f\u0443\u043d\u043a\u0442 \u043c\u0435\u043d\u044e \u2014 Location \u2014 \u043f\u0440\u0438 \u043d\u0430\u0432\u0435\u0434\u0435\u043d\u0438\u0438 \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u043c<br \/>  \u043f\u043e\u044f\u0432\u044f\u0442\u0441\u044f 3 \u043f\u043e\u0434-\u043f\u0443\u043d\u043a\u0442\u0430 \u2014 City, Country \u0438 State.<\/p>\n<p>  <b>readonly!<\/b><\/p>\n<p>  \u0418\u043d\u043e\u0433\u0434\u0430 \u043d\u0443\u0436\u043d\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c \u0442\u0443 \u0438\u043b\u0438 \u0438\u043d\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u044c \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f.<\/p>\n<p>  \u042d\u0442\u043e \u043b\u0435\u0433\u043a\u043e \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 `readonly!`:<\/p>\n<pre><code class=\"ruby\">class City &lt; ActiveRecord::Base   include Rear   readonly! end <\/code><\/pre>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u0433\u043e\u0440\u043e\u0434\u0430 \u043c\u043e\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0442\u044c \u0431\u0435\u0437 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f.<\/p>\n<h1>\u0421\u0442\u043e\u043b\u0431\u0446\u044b<\/h1>\n<p>  Rear \u0441\u0430\u043c \u043d\u0430\u0439\u0434\u0451\u0442 \u0432\u0441\u0435 \u0441\u0442\u043e\u043b\u0431\u0446\u044b \u0438 \u0441\u043e\u0437\u0434\u0430\u0441\u0442 HTML \u0442\u044d\u0433\u0438 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0442\u0438\u043f\u043e\u043c \u0441\u0442\u043e\u043b\u0431\u0446\u0430.<\/p>\n<p>  \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0442\u0438\u043f\u044b \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u044e\u0442\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438:<\/p>\n<p>  :string<br \/>  :text<br \/>  :date<br \/>  :time<br \/>  :datetime<br \/>  :boolean<\/p>\n<p>  \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0442\u0438\u043f\u044b \u043d\u0430\u0434\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u0442\u044c \u0432 \u0440\u0443\u0447\u043d\u0443\u044e:<\/p>\n<p>  :ckeditor<br \/>  :ace<br \/>  :radio<br \/>  :checkbox<br \/>  :select<br \/>  :password<\/p>\n<p>  \u0414\u043b\u044f \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0441\u0442\u043e\u043b\u0431\u0446\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0433\u043e \u0442\u0438\u043f\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043c\u0435\u0442\u043e\u0434 `input`.<br \/>  \u041f\u0435\u0440\u0432\u044b\u043c \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u043c \u0438\u0434\u0451\u0442 \u0438\u043c\u044f \u0441\u0442\u043e\u043b\u0431\u0446\u0430 \u0430 \u0442\u0438\u043f \u0438\u0434\u0451\u0442 \u0432\u0442\u043e\u0440\u044b\u043c:<\/p>\n<pre><code class=\"ruby\">class Foo &lt; ActiveRecord::Base      include Rear   input :content, :ckeditor  end <\/code><\/pre>\n<p>  \u042f\u0432\u043d\u043e\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 \u0438\u043c\u043c\u0435\u0442 \u0441\u043c\u044b\u0441\u043b \u0442\u043e\u043b\u044c\u043a\u043e \u0435\u0441\u043b\u0438 \u043d\u0443\u0436\u0435\u043d custom \u0442\u0438\u043f<br \/>  \u0438\u043b\u0438 \u043d\u0443\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c HTML \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u044b(class, style etc.) \u0438\u043b\u0438 \u0431\u043b\u043e\u043a \u0434\u043b\u044f \u0442\u043e\u043d\u043a\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438.<\/p>\n<p>  <b>label<\/b><\/p>\n<p>  \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043c\u0435\u0442\u043a\u0438, Rear \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0438\u043c\u044f \u0441\u0442\u043e\u043b\u0431\u0446\u0430.<\/p>\n<p>  \u0411\u043e\u043b\u0435\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u043c\u0435\u0442\u043a\u0443 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0434\u0430\u0442\u044c \u0447\u0435\u0440\u0435\u0437 `label`:<\/p>\n<pre><code class=\"ruby\">class Foo &lt; ActiveRecord::Base    input :date, label: 'Select date please'   # or   input :date do     label 'Select date please'   end end <\/code><\/pre>\n<p>  <b>Radio\/Checkbox\/Select<\/b><\/p>\n<p>  Radio\/Checkbox\/Select \u0441\u0442\u043e\u043b\u0431\u0446\u044b \u043d\u0443\u0436\u0434\u0430\u044e\u0442\u0441\u044f \u0432 \u0431\u043b\u043e\u043a\u0435 \u0434\u043b\u044f \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b:<\/p>\n<p>  \u0412\u043d\u0443\u0442\u0440\u0438 \u0431\u043b\u043e\u043a\u0430 \u043d\u0430\u0434\u043e \u0437\u0430\u0434\u0430\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u043e\u043f\u0446\u0438\u0439 \u0432 \u0432\u0438\u0434\u0435 Array \u0438\u043b\u0438 Hash.<\/p>\n<p>  \u0417\u0430\u0434\u0430\u044e\u0442\u0441\u044f \u043e\u043f\u0446\u0438\u0438 \u0447\u0435\u0440\u0435\u0437 \u043c\u0435\u0442\u043e\u0434 `options`.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0442\u0430\u043a\u0436\u0435 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043c\u0435\u0442\u043e\u043a, \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Array:<\/p>\n<pre><code class=\"ruby\">input :color, :select do   options 'Red', 'Green', 'Blue' end <\/code><\/pre>\n<p>  \u0415\u0441\u043b\u0438 \u0436\u0435 \u043c\u0435\u0442\u043a\u0438 \u043e\u0442\u043b\u0438\u0447\u0430\u044e\u0442\u0441\u044f, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c Hash:<\/p>\n<pre><code class=\"ruby\">input :color, :radio do   options 'r' =&gt; 'Red', 'g' =&gt; 'Green', 'b' =&gt; 'Blue' end <\/code><\/pre>\n<p>  Radio \u0438 single-Select \u0441\u0442\u043e\u043b\u0431\u0446\u044b \u043e\u0442\u043f\u0440\u0430\u0432\u044f\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u0432\u0438\u0434\u0435 \u0441\u0442\u0440\u043e\u043a\u0438.<\/p>\n<p>  \u0410 \u0432\u043e\u0442 Checkbox \u0438 multi-Select \u043e\u0442\u043f\u0440\u0430\u0432\u044f\u0442 Array.<\/p>\n<p>  \u0415\u0441\u043b\u0438 ORM \u043d\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u044b\u0432\u0430\u0435\u0442 Array \u0432 \u0441\u0442\u0440\u043e\u043a\u0443,<br \/>  \u043d\u0430\u0434\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0445\u0443\u043a \u0434\u043b\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u0434 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u043e\u0439.<\/p>\n<p>  \u0414\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u044d\u0442\u043e \u0447\u0435\u0440\u0435\u0437 `on_save` \u043c\u0435\u0442\u043e\u0434:<\/p>\n<pre><code class=\"ruby\">input :color, :checkbox do   options 'r' =&gt; 'Red', 'g' =&gt; 'Green', 'b' =&gt; 'Blue' end  on_save do   params[:color] = params[:color].join(',') end <\/code><\/pre>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u0446\u0432\u0435\u0442\u0430 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0432 \u0432\u0438\u0434\u0435 \u0441\u0442\u0440\u043e\u043a\u0438.<\/p>\n<p>  \u041d\u043e \u0442\u0435\u043f\u0435\u0440\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043d\u0435 \u0432\u044b\u0434\u0435\u043b\u0438\u0442 \u043d\u0438 \u043e\u0434\u043d\u0443 \u043e\u043f\u0446\u0438\u044e, \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u044f \u0432\u043f\u0435\u0447\u0430\u0442\u043b\u0435\u043d\u0438\u0435 \u0447\u0442\u043e \u0446\u0432\u0435\u0442\u0430 \u043d\u0435 \u0431\u044b\u043b\u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u044b.<\/p>\n<p>  \u042d\u0442\u043e \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043d\u0438 ORM \u043d\u0438 Rear \u043d\u0435 \u0437\u043d\u0430\u044e\u0442 \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u0432 Array.<\/p>\n<p>  \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u044d\u0442\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u0435\u0442\u043e\u0434\u0430 `options`, \u0437\u0430\u0434\u0430\u0432 \u0431\u043b\u043e\u043a \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442 \u0441\u0442\u0440\u043e\u043a\u0443 \u0432 Array:<\/p>\n<pre><code class=\"ruby\">input :color, :checkbox do   options 'r' =&gt; 'Red', 'g' =&gt; 'Green', 'b' =&gt; 'Blue' do     item.color.split(',')   end end  on_save do   params[:color] = params[:color].join(',') end <\/code><\/pre>\n<p>  \u0411\u043b\u043e\u043a \u0438\u043c\u0435\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043e\u0431\u044c\u0435\u043a\u0442\u0443 \u0447\u0435\u0440\u0435\u0437 `item` \u0438 \u043c\u043e\u0436\u0435\u0442 \u0434\u0435\u043b\u0430\u0442\u044c \u0441 \u043d\u0438\u043c \u0432\u0441\u0451 \u0447\u0442\u043e \u0443\u0433\u043e\u0434\u043d\u043e.<\/p>\n<p>  \u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043d\u0430\u043c \u0432\u0441\u0435\u0433\u043e-\u043b\u0438\u0448\u044c \u043d\u0430\u0434\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u0446\u0432\u0435\u0442\u0430 \u0432 Array \u2014 `item.color.split(&#8216;,&#8217;)`<\/p>\n<p>  \u0411\u043b\u043e\u043a \u0432\u0441\u0435\u0433\u0434\u0430 \u0434\u043e\u043b\u0436\u0435\u043d \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c Array \u0438\u0437 \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439, \u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0441\u0430\u043c \u043c\u0435\u0442\u043e\u0434 `options` \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 Hash.<\/p>\n<p>  <b>Rich Text Editor<\/b><\/p>\n<p>  \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e Rear \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 textarea \u0434\u043b\u044f Text \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u0435\u0432\u0440\u0430\u0442\u0438\u0442\u044c textarea \u0432 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b HTML \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440, \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c <code>rear-ckeditor<\/code> \u0438 \u0441\u0442\u0430\u0432\u0438\u043c \u0442\u0438\u043f \u0441\u0442\u043e\u043b\u0431\u0446\u0430 \u0432 <code>ckeditor<\/code>:<\/p>\n<pre><code class=\"ruby\">class MyModel &lt; ActiveRecord::Base      include Rear   input :content, :ckeditor  end <\/code><\/pre>\n<p>  \u041d\u0430 \u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 Rear \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 CKEditor 4\u0439 \u0432\u0435\u0440\u0441\u0438\u0438.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0430 \u043d\u0443\u0436\u043d\u043e \u0438\u043c\u0435\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0432\u044b\u0431\u0438\u0440\u0430\u0442\u044c\/\u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438,<br \/>  \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0442\u0430\u043a\u0436\u0435 \u043c\u0435\u0442\u043e\u0434 `public_path`, \u0437\u0430\u0434\u0430\u0432 \u043f\u0443\u0442\u044c \u043a \u043f\u0430\u043f\u043a\u0435 \u0441 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430\u043c\u0438:<\/p>\n<pre><code class=\"ruby\">input :content, :ckeditor do   public_path '..\/public\/images' end <\/code><\/pre>\n<p>  <b>readonly \/ disabled<\/b><\/p>\n<p>  \u0418\u043d\u043e\u0433\u0434\u0430 \u043d\u0443\u0436\u043d\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0435 \u0441\u0442\u043e\u043b\u0431\u0446\u044b \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f.<\/p>\n<p>  \u0414\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u044d\u0442\u043e \u0447\u0435\u0440\u0435\u0437 \u043e\u043f\u0446\u0438\u044e `readonly`:<\/p>\n<pre><code class=\"ruby\">input :visits, readonly: true <\/code><\/pre>\n<p>  \u0412\u0430\u0436\u043d\u043e \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c \u0447\u0442\u043e readonly \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u0435\u043d \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439.<\/p>\n<p>  \u041f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u043d\u043e\u0432\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 readonly \u0441\u0442\u043e\u043b\u0431\u0446\u044b \u0432\u043f\u043e\u043b\u043d\u0435 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u0443\u0435\u043c\u044b.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u043d\u0443\u0436\u043d\u043e \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u043d\u043e\u0432\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439, \u0438\u0441\u043f\u0440\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u043e\u043f\u0446\u0438\u044e `disabled`:<\/p>\n<pre><code class=\"ruby\">input :visits, disabled: true <\/code><\/pre>\n<p>  \u0415\u0441\u043b\u0438 \u0436\u0435 \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0432\u0441\u0435\u043c \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0439 \u0441\u0442\u043e\u043b\u0431\u0435\u0446, \u0442\u0430\u043a \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u043b\u0441\u044f \u0438 \u043d\u0435 \u0431\u044b\u043b \u0432\u043a\u043b\u044e\u0447\u0451\u043d \u0432 \u043d\u0430\u0431\u043e\u0440 \u0434\u0430\u043d\u043d\u044b\u0445, \u0441\u0442\u0430\u0432\u0438\u043c \u043e\u043f\u0446\u0438\u044e `editor` \u0432 false:<\/p>\n<pre><code class=\"ruby\">input :visits, editor: false <\/code><\/pre>\n<p>  \u0415\u0441\u043b\u0438 \u043d\u0443\u0436\u043d\u043e \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0441\u0442\u043e\u043b\u0431\u0435\u0446 \u0442\u0430\u043a\u0436\u0435 \u0441\u043e \u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u043e\u0431\u0437\u043e\u0440\u0430, \u0441\u0442\u0430\u0432\u0438\u043c \u043e\u043f\u0446\u0438\u044e `pane` \u0432 false:<\/p>\n<pre><code class=\"ruby\">input :visits, pane: false <\/code><\/pre>\n<p>  <b>row<\/b><\/p>\n<p>  \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e Rear \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442 \u043a\u0430\u0436\u0434\u044b\u0439 \u0441\u0442\u043e\u043b\u0431\u0435\u0446 \u0432 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u043c \u0440\u044f\u0434\u0443 \u2014 \u043e\u0434\u0438\u043d \u0441\u0442\u043e\u043b\u0431\u0435\u0446, \u043e\u0434\u0438\u043d \u0440\u044f\u0434.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 \u0432 \u043e\u0434\u0438\u043d \u0440\u044f\u0434, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u043e\u043f\u0446\u0438\u044e `row`:<\/p>\n<pre><code class=\"ruby\">input :red,   row: :Colors input :green, row: :Colors input :blue,  row: :Colors <\/code><\/pre>\n<p>  \u041c\u043e\u0436\u043d\u043e \u0442\u0430\u043a\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434 `row` \u0441 \u0431\u043b\u043e\u043a\u043e\u043c:<\/p>\n<pre><code class=\"ruby\">row :Colors do   input :active   input :published   input :archived end <\/code><\/pre>\n<p>  \u0415\u0441\u043b\u0438 \u0440\u044f\u0434 \u043d\u0435 \u043d\u0443\u0436\u0434\u0430\u0435\u0442\u0441\u044f \u0432 \u043c\u0435\u0442\u043a\u0435, `row` \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u0437\u044b\u0432\u0430\u0442\u044c \u0431\u0435\u0437 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432.<\/p>\n<p>  <b>HTML \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u044b<\/b><\/p>\n<p>  \u041a\u043e\u0433\u0434\u0430 \u0441\u0442\u043e\u043b\u0431\u0435\u0446 \u043d\u0443\u0436\u0434\u0430\u0435\u0442\u0441\u044f \u0432 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0430\u0445, \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u043c \u0438\u0445 \u0432 \u0432\u0438\u0434\u0435 \u043e\u043f\u0446\u0438\u0439:<\/p>\n<pre><code class=\"ruby\">input :short_text, style: &quot;height: 400px;&quot;  # or  input :short_text do   html_attrs style: &quot;height: 400px;&quot; end <\/code><\/pre>\n<p>  <b>\u041e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445<\/b><\/p>\n<p>  \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e Rear \u043e\u0442\u043e\u0431\u0440\u0430\u0437\u0438\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u0442\u043e\u043b\u0431\u0446\u0430 \u0432 \u0442\u043e\u043c \u0432\u0438\u0434\u0435 \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u043d\u0438 \u043f\u0440\u0438\u0448\u043b\u0438 \u0438\u0437 ORM.<\/p>\n<p>  \u041a\u043e\u0433\u0434\u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0438\u0442\u044c, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u043c\u0435\u0442\u043e\u0434 `value` \u0432\u043d\u0443\u0442\u0440\u0438 \u0431\u043b\u043e\u043a\u0430:<\/p>\n<pre><code class=\"ruby\">input :created_at do   value { item.created_at.strftime('%d %m, %Y') } end <\/code><\/pre>\n<p>  \u0412\u0430\u0436\u043d\u043e \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c \u0447\u0442\u043e `value` \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0438\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043a\u0430\u043a \u0434\u043b\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0442\u0430\u043a \u0438 \u0434\u043b\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u043e\u0431\u0437\u043e\u0440\u0430.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0438\u043d\u0433 \u043d\u0443\u0436\u0435\u043d \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c `editor_value` \u0434\u043b\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 `pane_value` \u0434\u043b\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u043e\u0431\u0437\u043e\u0440\u0430:<\/p>\n<pre><code class=\"ruby\">input :created_at do   pane_value { item.created_at.strftime('%d %m, %Y') } end <\/code><\/pre>\n<h1>\u0417\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438<\/h1>\n<p>  Rear \u0441\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0430\u0439\u0434\u0451\u0442 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u0438 \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0438\u043c\u0438.<\/p>\n<p>  \u0415\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e\/\u043c\u043e\u0436\u043d\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u044d\u0442\u043e \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u0438\u043b\u0438 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0438\u0445 readonly.<\/p>\n<p>  \u0418\u0441\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438:<\/p>\n<pre><code class=\"ruby\">class Page &lt; ActiveRecord::Base   belongs_to :author    include Rear   ignore_assoc :author   ignore_assoc :tags   # \u0438\u043b\u0438   ignored_assocs :author, :tags    end <\/code><\/pre>\n<p>  \u041e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u043c \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f:<\/p>\n<pre><code class=\"ruby\">class Page &lt; ActiveRecord::Base   include Rear   readonly_assoc :author   readonly_assoc :tags   # \u0438\u043b\u0438   readonly_assocs :author, :tags end <\/code><\/pre>\n<p>  \u041d\u0430 \u044d\u0442\u043e\u043c \u043f\u043e\u043a\u0430 \u0432\u0441\u0451.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0445\u0430\u0431\u0440\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u044f\u0432\u0438\u0442 \u0438\u043d\u0442\u0435\u0440\u0435\u0441, \u0431\u0443\u0434\u0435\u0442 \u0432\u0442\u043e\u0440\u0430\u044f \u0447\u0430\u0441\u0442\u044c, \u043f\u0440\u043e \u0444\u0438\u043b\u044c\u0442\u0440\u044b \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0432\u043a\u0443\u0441\u043d\u043e\u0441\u0442\u0438.    \t \t\t   \t<\/p>\n<div class=\"clear\"><\/div>\n<\/p><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"http:\/\/habrahabr.ru\/post\/176999\/\"> http:\/\/habrahabr.ru\/post\/176999\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"content html_format\">   \t\u041e\u0447\u0435\u043d\u044c \u0447\u0430\u0441\u0442\u043e, \u043f\u043e\u0447\u0442\u0438 \u0432\u0441\u0435\u0433\u0434\u0430, \u0445\u043e\u0447\u0435\u0442\u0441\u044f \u0441\u043e\u043a\u0440\u0430\u0442\u0438\u0442\u044c \u0434\u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c\u0430 \u0432\u0440\u0435\u043c\u044f\/\u0443\u0441\u0438\u043b\u0438\u044f \u043d\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u00ab\u0430\u0434\u043c\u0438\u043d\u043a\u0438\u00bb.<\/p>\n<p>  \u0422\u0435\u043c \u0431\u043e\u043b\u0435\u0435 \u043a\u043e\u0433\u0434\u0430 \u0443\u0436\u0435 \u0432\u0441\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u0432 \u0441\u0442\u0440\u043e\u044e \u0438 \u0445\u043e\u0447\u0435\u0442\u0441\u044f \u0434\u0430\u0442\u044c \u043a\u043b\u0438\u0435\u043d\u0442\u0443 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u043d\u0438\u043c\u0438,<br \/>  \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u0437\u0430\u043f\u0438\u0441\u0438, \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u0443\u0434\u0430\u043b\u044f\u0442\u044c, \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u0438\u0442\u0434.<\/p>\n<p>  \u041e\u0431\u044b\u0447\u043d\u043e \u043d\u0430 \u0440\u0443\u0442\u0438\u043d\u043d\u044b\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u044d\u0442\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u0443\u0445\u043e\u0434\u0438\u0442 \u043d\u0435\u043f\u0440\u043e\u0441\u0442\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043c\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438\/\u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432.<\/p>\n<p>  \u041a\u0440\u043e\u043c\u0435 \u0441\u043b\u0443\u0447\u0430\u044f \u043a\u043e\u0433\u0434\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0443\u0436\u0435 \u0433\u043e\u0442\u043e\u0432\u044b\u0435 \u043d\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u0438.<\/p>\n<p>  \u0418\u043c\u0435\u043d\u043d\u043e \u043a \u0442\u0430\u043a\u0438\u043c \u043d\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u043c \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u0438 Rear.<\/p>\n<p>  \u0421 \u0435\u0433\u043e \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u0439 \u0430\u0434\u043c\u0438\u043d \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u043e\u0439 \u2014 <b>include Rear<\/b><\/p>\n<p>  \u0421\u043e\u0433\u043b\u0430\u0441\u0435\u043d, \u0437\u0432\u0443\u0447\u0438\u0442 \u043a\u0430\u043a SEO-\u0448\u043d\u043e\u0435 \u0437\u0430\u044f\u0432\u043b\u0435\u043d\u0438\u0435, \u043d\u043e \u0442\u0435\u043c \u043d\u0435 \u043c\u0435\u043d\u0435\u0435 \u044d\u0442\u043e \u0442\u0430\u043a.<\/p>\n<p>  \u041f\u043e\u043b\u043d\u044b\u0439 \u0440\u0430\u0437\u0431\u043e\u0440 \u043f\u043e\u043b\u0451\u0442\u0430 \u043f\u043e\u0434 \u043a\u0430\u0442\u043e\u043c.<\/p>\n<p>  \u0410 \u0434\u043b\u044f \u043d\u0435\u0442\u0435\u0440\u043f\u0435\u043b\u0438\u0432\u044b\u0445 \u2014 <a href=\"http:\/\/rear.rbho.me\/\"><b>\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0434\u0435\u043c\u043e<\/b><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-176999","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/176999","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=176999"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/176999\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=176999"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=176999"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=176999"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}