{"id":25291,"date":"2016-10-10T12:24:14","date_gmt":"2016-10-10T12:24:14","guid":{"rendered":"https:\/\/dev.railscarma.com\/make-rails-application-multilingual\/"},"modified":"2022-09-06T08:22:58","modified_gmt":"2022-09-06T08:22:58","slug":"make-rails-application-multilingual","status":"publish","type":"post","link":"https:\/\/www.railscarma.com\/ja\/%e3%83%96%e3%83%ad%e3%82%b0\/%e6%8a%80%e8%a1%93%e8%ab%96%e6%96%87\/make-rails-application-multilingual\/","title":{"rendered":"Rails \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u591a\u8a00\u8a9e\u5316\u3059\u308b\u65b9\u6cd5"},"content":{"rendered":"<div data-elementor-type=\"wp-post\" data-elementor-id=\"25291\" class=\"elementor elementor-25291\" data-elementor-post-type=\"post\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-6de2d749 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"6de2d749\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-1434b12f\" data-id=\"1434b12f\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-77cf116d elementor-widget elementor-widget-text-editor\" data-id=\"77cf116d\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h3>Rails gem \u30a2\u30d7\u30ed\u30fc\u30c1\u3001MySQL \u30a2\u30d7\u30ed\u30fc\u30c1\u3001\u591a\u8a00\u8a9e Rails \u69cb\u9020<\/h3>\n<p>\u4e16\u754c\u306e\u307b\u3068\u3093\u3069\u306e\u4eba\u306f\u82f1\u8a9e\u3092\u8a71\u305b\u307e\u305b\u3093\u3002\u305d\u3053\u3067\u56fd\u969b\u5316\u3068\u30ed\u30fc\u30ab\u30ea\u30bc\u30fc\u30b7\u30e7\u30f3\u304c\u767b\u5834\u3057\u307e\u3059\u3002Rails \u306b\u306f\u512a\u308c\u305f i18n API \u304c\u3042\u308a\u307e\u3059\u3002<br>\u53c2\u7167\uff1a<a href=\"http:\/\/guides.rubyonrails.org\/i18n.html\"> http:\/\/guides.rubyonrails.org\/i18n.html<\/a><\/p>\n<p>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u82f1\u8a9e\u4ee5\u5916\u306e\u5358\u4e00\u306e\u30ab\u30b9\u30bf\u30e0\u8a00\u8a9e\u306b\u7ffb\u8a33\u3057\u305f\u308a\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u591a\u8a00\u8a9e\u30b5\u30dd\u30fc\u30c8\u3092\u63d0\u4f9b\u3057\u305f\u308a\u3059\u308b\u305f\u3081\u306e\u3001\u4f7f\u3044\u3084\u3059\u304f\u62e1\u5f35\u53ef\u80fd\u306a\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n<p><strong>I18n API:<\/strong><br>I18n API \u306e\u6700\u3082\u91cd\u8981\u306a\u30e1\u30bd\u30c3\u30c9\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<br># \u30eb\u30c3\u30af\u30a2\u30c3\u30d7\u306e\u30c6\u30ad\u30b9\u30c8\u7ffb\u8a33\u3092\u7ffb\u8a33\u3059\u308b<br>localize # \u65e5\u4ed8\u3068\u6642\u523b\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u30ed\u30fc\u30ab\u30eb\u5f62\u5f0f\u306b\u30ed\u30fc\u30ab\u30e9\u30a4\u30ba\u3059\u308b<\/p>\n<p>\u3053\u308c\u3089\u306b\u306f #t \u304a\u3088\u3073 #l \u3068\u3044\u3046\u30a8\u30a4\u30ea\u30a2\u30b9\u304c\u3042\u308b\u305f\u3081\u3001\u6b21\u306e\u3088\u3046\u306b\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002<\/p>\n<pre><code>I18n.t &#039;app.title&#039; I18n.l Time.now<\/code><\/pre>\n<p><strong>Rails-i18n gem:<\/strong><br><strong>\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb:<\/strong><br>Gemfile \u306b\u8ffd\u52a0\u3057\u307e\u3059\u3002<\/p>\n<pre><code>gem &#039;rails-i18n&#039;\u3001github: &#039;svenfuchs\/rails-i18n&#039;\u3001\u30d6\u30e9\u30f3\u30c1: &#039;master&#039; # 5.x \u306e\u5834\u5408<\/code><\/pre>\n<p><strong>\u69cb\u6210\uff1a<\/strong><br>\u30c7\u30d5\u30a9\u30eb\u30c8\u3067\u306f\u3001rails-i18n \u306f gem \u3067\u5229\u7528\u53ef\u80fd\u306a\u3059\u3079\u3066\u306e\u30ed\u30b1\u30fc\u30eb \u30d5\u30a1\u30a4\u30eb\u3001\u8907\u6570\u5f62\u5316\u304a\u3088\u3073\u97f3\u8a33\u30eb\u30fc\u30eb\u3092\u30ed\u30fc\u30c9\u3057\u307e\u3059\u3002 I18n.available_locales \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4ecb\u3057\u3066\u30ed\u30fc\u30c9\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u30ed\u30b1\u30fc\u30eb\u3092 config\/environments\/* \u3067\u6307\u5b9a\u3059\u308b\u3068\u3001\u3053\u306e\u52d5\u4f5c\u3092\u5909\u66f4\u3067\u304d\u307e\u3059\u3002<\/p>\n<pre><code>config.i18n.available_locales = [&#039;es-CO&#039;, :de]<\/code><\/pre>\n<p>\u307e\u305f\u306f<\/p>\n<pre><code>config.i18n.available_locales = :nl<\/code><\/pre>\n<p>\u5225\u306e gem \u3082\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002<\/p>\n<p><strong>gem \u3092\u30b0\u30ed\u30fc\u30d0\u30eb\u5316\u3059\u308b:<\/strong><br>Rails I18n \u306f\u3001ActiveRecord \u30e2\u30c7\u30eb\/\u30c7\u30fc\u30bf\u5909\u63db\u7528\u306e\u4e8b\u5b9f\u4e0a\u306e\u6a19\u6e96\u30e9\u30a4\u30d6\u30e9\u30ea\u3067\u3059\u3002 Globalize \u306f\u3001Ruby on Rails \u306e I18n API \u306b\u57fa\u3065\u3044\u3066\u30d3\u30eb\u30c9\u3057\u3001ActiveRecord \u30e2\u30c7\u30eb\u306b\u30e2\u30c7\u30eb\u5909\u63db\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002<\/p>\n<p><strong>\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb:<\/strong><br>\u30d0\u30f3\u30c9\u30e9\u30fc\u3092\u4f7f\u7528\u3059\u308b\u5834\u5408\u306f\u3001\u3053\u308c\u3092 Gemfile \u306b\u5165\u308c\u307e\u3059\u3002<\/p>\n<pre><code>gem &#039;globalize&#039;, &#039;~&gt; 5.0.0&#039; Rails 5 \u3067 globalize \u3092\u4f7f\u7528\u3059\u308b\u306b\u306f\u3001\u3053\u308c\u3092 Gemfile gem &#039;activemodel-serializers-xml&#039; \u306b\u8ffd\u52a0\u3057\u307e\u3059\u3002<\/code><\/pre>\n<p><b>2. \u30c9\u30ad\u30e5\u30e1\u30f3\u30c8: <\/b><a href=\"https:\/\/github.com\/globalize\/globalize\">https:\/\/github.com\/globalize\/globalize<\/a><br><\/p>\n<p><strong style=\"font-size: 16px; color: var( --e-global-color-text );\">\u591a\u8a00\u8a9e\u30a2\u30d7\u30ea\u306e DB \u8a2d\u8a08 (\u82f1\u8a9e\u3068\u30a2\u30e9\u30d3\u30a2\u8a9e):<\/strong><\/p>\n<p>2 \u3064\u307e\u305f\u306f 3 \u3064\u306e\u8a00\u8a9e\u3092\u30b5\u30dd\u30fc\u30c8\u3059\u308b\u305f\u3081\u306e\u30a2\u30d7\u30ed\u30fc\u30c1:<\/p>\n<p><strong>1. \u30ab\u30e9\u30e0\u30a2\u30d7\u30ed\u30fc\u30c1:<\/strong><\/p>\n<pre><code>\u8a00\u8a9e\u5217\u3092\u4f7f\u7528\u3057\u3066\u5217\u30a2\u30d7\u30ed\u30fc\u30c1 \u30e2\u30c7\u30eb\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002 `title_en` varchar(255) NOT NULL\u3001`title_ar` varchar(255) NOT NULL\u3001<\/code><\/pre>\n<p>\u3053\u308c\u3067\u3001\u30af\u30a8\u30ea\u306e\u65b9\u6cd5\u3082\u975e\u5e38\u306b\u7c21\u5358\u306b\u306a\u308a\u307e\u3057\u305f\u3002\u9078\u629e\u3057\u305f\u8a00\u8a9e\u306b\u5fdc\u3058\u3066\u9069\u5207\u306a\u5217\u3092\u81ea\u52d5\u7684\u306b\u9078\u629e\u3059\u308b\u3053\u3068\u3067\u3053\u308c\u3092\u884c\u3046\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<p><strong>\u5229\u70b9:<\/strong><\/p>\n<ul>\n<li>\u30b7\u30f3\u30d7\u30eb\u3055 \u2013 \u5b9f\u88c5\u304c\u7c21\u5358<\/li>\n<li>\u7c21\u5358\u306a\u30af\u30a8\u30ea \u2013 JOIN \u306f\u5fc5\u8981\u3042\u308a\u307e\u305b\u3093<\/li>\n<li>\u91cd\u8907\u306a\u3057 \u2013 \u91cd\u8907\u3057\u305f\u30b3\u30f3\u30c6\u30f3\u30c4\u306f\u3042\u308a\u307e\u305b\u3093<\/li>\n<\/ul>\n<p><strong>\u77ed\u6240:<\/strong><\/p>\n<ul>\n<li>\u4fdd\u5b88\u304c\u96e3\u3057\u3044 \u2013 2 \uff5e 3 \u8a00\u8a9e\u306e\u5834\u5408\u306f\u7c21\u5358\u306b\u6a5f\u80fd\u3057\u307e\u3059\u304c\u3001\u5217\u3084\u8a00\u8a9e\u304c\u591a\u3044\u5834\u5408\u306f\u975e\u5e38\u306b\u56f0\u96e3\u306b\u306a\u308a\u307e\u3059\u3002<\/li>\n<li>\u65b0\u3057\u3044\u8a00\u8a9e\u3092\u8ffd\u52a0\u3059\u308b\u306e\u306f\u96e3\u3057\u3044<\/li>\n<\/ul>\n<p><strong>2. \u5909\u63db\u30c6\u30fc\u30d6\u30eb \u30a2\u30d7\u30ed\u30fc\u30c1:<\/strong><br>\u5909\u63db\u53ef\u80fd\u306a\u30c6\u30fc\u30d6\u30eb\u3054\u3068\u306b\u95a2\u9023\u3059\u308b\u5909\u63db\u30c6\u30fc\u30d6\u30eb\u3092\u6301\u3061\u307e\u3059\u3002<\/p>\n<pre><code>CREATE TABLE PRODUCT (id int, PRICE NUMBER(18, 2)) CREATE TABLE PRODUCT_tr (id int, product_id INT FK, languagecode varchar, name text, description text)<\/code><\/pre>\n<p>\u3053\u3046\u3059\u308b\u3053\u3068\u3067\u3001\u7ffb\u8a33\u53ef\u80fd\u306a\u5217\u304c\u8907\u6570\u3042\u308b\u5834\u5408\u3001\u305d\u308c\u3092\u53d6\u5f97\u3059\u308b\u305f\u3081\u306b\u5fc5\u8981\u306a\u7d50\u5408\u306f 1 \u3064\u3060\u3051\u306b\u306a\u308a\u3001\u30a2\u30a4\u30c6\u30e0\u3092\u95a2\u9023\u3059\u308b\u7ffb\u8a33\u3068\u3068\u3082\u306b\u30a4\u30f3\u30dd\u30fc\u30c8\u3059\u308b\u306e\u304c\u7c21\u5358\u306b\u306a\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n<ul>\n<li>\u65b0\u3057\u3044\u8a00\u8a9e\u7528\u306b\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9 \u30b9\u30ad\u30fc\u30de\u3092\u5909\u66f4\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u305b\u3093 (\u3057\u305f\u304c\u3063\u3066\u3001\u30b3\u30fc\u30c9\u306e\u5909\u66f4\u304c\u5236\u9650\u3055\u308c\u307e\u3059)\u3002<\/li>\n<li>\u672a\u5b9f\u88c5\u306e\u8a00\u8a9e\u3084\u7279\u5b9a\u306e\u9805\u76ee\u306e\u7ffb\u8a33\u306b\u591a\u304f\u306e\u30b9\u30da\u30fc\u30b9\u3092\u5fc5\u8981\u3068\u3057\u307e\u305b\u3093<br>\u6700\u5927\u9650\u306e\u67d4\u8edf\u6027\u3092\u63d0\u4f9b\u3057\u307e\u3059<\/li>\n<li>\u307e\u3070\u3089\u306a\u30c6\u30fc\u30d6\u30eb\u306b\u306a\u308b\u3053\u3068\u306f\u3042\u308a\u307e\u305b\u3093<\/li>\n<li>null \u30ad\u30fc\u306b\u3064\u3044\u3066\u5fc3\u914d\u3057\u305f\u308a\u3001null \u30a8\u30f3\u30c8\u30ea\u306e\u4ee3\u308f\u308a\u306b\u65e2\u5b58\u306e\u7ffb\u8a33\u304c\u8868\u793a\u3055\u308c\u3066\u3044\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u305f\u308a\u3059\u308b\u5fc5\u8981\u306f\u3042\u308a\u307e\u305b\u3093\u3002<\/li>\n<\/ul>\n<p><strong>Rails-5 \u3092\u4f7f\u7528\u3057\u305f\u591a\u8a00\u8a9e\u30a2\u30d7\u30ea (\u82f1\u8a9e\u3068\u30a2\u30e9\u30d3\u30a2\u8a9e):<\/strong><br>\u591a\u8a00\u8a9e\u306e Rails \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30a2\u30d7\u30ed\u30fc\u30c1\u306f\u3001\u5358\u8a00\u8a9e\u306e\u5834\u5408\u3068\u975e\u5e38\u306b\u4f3c\u3066\u3044\u307e\u3059\u3002\u3053\u3053\u3067\u306f\u3001\u5fc5\u8981\u306a\u3059\u3079\u3066\u306e\u8a00\u8a9e\u306e YAML \u8a00\u8a9e\u30d5\u30a1\u30a4\u30eb\u3092\u5b9a\u7fa9\u3057\u3001Rails \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306b\u73fe\u5728\u4f7f\u7528\u3059\u308b\u8a00\u8a9e\u3092\u6307\u793a\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\u3053\u308c\u3092\u884c\u3046\u306b\u306f\u3001 <strong>I18n.\u30ed\u30b1\u30fc\u30eb\u3002<\/strong><\/p>\n<p>URL \u30d1\u30b9 \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u306b\u3088\u308b I18n.locale \u306e\u8a2d\u5b9a<br>http:\/\/0.0.0.0:3000\/ar \u306b\u306f\u30a2\u30e9\u30d3\u30a2\u8a9e\u30d0\u30fc\u30b8\u30e7\u30f3\u3092\u8868\u793a\u3057\u3001http:\/\/0.0.0.0:3000\/en \u306b\u306f\u82f1\u8a9e\u30d0\u30fc\u30b8\u30e7\u30f3\u3092\u8868\u793a\u3057\u307e\u3059\u3002<\/p>\n<p>config\/routes.rb<\/p>\n<pre><code>Myapp::Application.routes.draw doscope &quot;(:locale)&quot;, :locale =&gt; \/en|ar\/ do root :to =&gt; &#039;page#index&#039; get &quot;page\/index&quot; end end<\/code><\/pre>\n<p>\u3092\u8a2d\u5b9a\u3057\u307e\u3059 <strong>before_filter<\/strong> app\/controllers\/application_controller.rb \u306b\u3042\u308a\u307e\u3059\u3002<\/p>\n<pre><code>class ApplicationController &lt; ActionController::Base protected_from_forgery before_filter :set_locale private def set_locale I18n.locale = params[:locale] || I18n.default_locale \u7d42\u4e86 \u7d42\u4e86<\/code><\/pre>\n<p>\u30c6\u30b9\u30c8\u3059\u308b\u306b\u306f\u3001URL \u306b\u30a2\u30af\u30bb\u30b9\u3057\u307e\u3059\u3002<\/p>\n<pre><code>http:\/\/0.0.0.0:3000\/ar<\/code><\/pre>\n<p>\u307e\u305f\u306f<\/p>\n<pre><code>http:\/\/0.0.0.0:3000\/ar\/page\/index<\/code><\/pre>\n<p><strong>\u30c7\u30d5\u30a9\u30eb\u30c8\u8a00\u8a9e\u306e\u8a2d\u5b9a:<\/strong><\/p>\n<pre><code>app\/controllers\/application_controller.rb: \u30af\u30e9\u30b9 ApplicationController &lt; ActionController::Base protected_from_forgery before_filter :set_locale private def set_locale I18n.locale = params[:locale] || I18n.default_locale Rails.application.routes.default_url_options[:locale]= I18n.locale end end<\/code><\/pre>\n<p>\u305d\u306e\u7d50\u679c\u3001\u4ed6\u306b\u4f55\u3082\u3059\u308b\u5fc5\u8981\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u30b9\u30ad\u30e3\u30d5\u30a9\u30fc\u30eb\u30c9 \u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u30fc\u3092\u4ecb\u3057\u3066\u751f\u6210\u3055\u308c\u305f\u3059\u3079\u3066\u306e\u30ea\u30f3\u30af\u306f\u3001\u305d\u308c\u306b\u5fdc\u3058\u3066\u81ea\u52d5\u7684\u306b\u5909\u66f4\u3055\u308c\u307e\u3059\u3002<\/p>\n<p><strong>\u30d6\u30e9\u30a6\u30b6\u306e Accept Language HTTP \u30d8\u30c3\u30c0\u30fc\u3092\u4ecb\u3057\u3066 I18n.locale \u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002<\/strong><\/p>\n<pre><code>app\/controllers\/application_controller.rbclass ApplicationController &lt; ActionController::Base protected_from_forgery before_filter :set_locale private def extract_locale_from_accept_ language_header request.env[&#039;HTTP_ACCEPT_LANGUAGE&#039;].scan(\/^[az]{2}\/).first end def set_locale I18n.locale = extract_locale_from_accept_ language_header || I18n.default_locale \u7d42\u4e86 \u7d42\u4e86<\/code><\/pre>\n<p>\u3053\u3053\u3067\u3001\u30eb\u30fc\u30c8 \u30d5\u30a1\u30a4\u30eb\u3092\u30af\u30ea\u30fc\u30f3\u306b\u5909\u66f4\u3067\u304d\u307e\u3059\u3002<\/p>\n<pre><code>config\/routes.rb: Myapp::Application.routes.draw do get &quot;page\/index&quot; root :to =&gt; &#039;page#index&#039; end<\/code><\/pre>\n<p><strong>I18n.locale \u3092\u30bb\u30c3\u30b7\u30e7\u30f3\u306b\u4fdd\u5b58\u3059\u308b<\/strong><\/p>\n<pre><code>app\/controllers\/set_mylang_controller.rb: class SetMy languageController &lt; ApplicationController #English def en I18n.locale = :en set_session_and_redirect end #Arabic def ar I18n.locale = :ar set_session_and_redirect end private def set_session_and_redirect session[:locale] = I18n.locale redirect_to :back\u6551\u52a9ActionController::RedirectBackError redirect_to :root end end<\/code><\/pre>\n<p><strong>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u5909\u66f4:<\/strong><\/p>\n<pre><code>app\/controllers\/application_controller.rb: \u30af\u30e9\u30b9 ApplicationController &lt; ActionController::Base protected_from_forgery before_filter :set_locale private def set_locale I18n.locale = session[:locale] || I18n.default_locale session[:locale] = I18n.locale end end<\/code><\/pre>\n<p>\u30a2\u30e9\u30d3\u30a2\u8a9e\u3092\u8a2d\u5b9a\u3059\u308b\u306b\u306f:<\/p>\n<pre><code>http:\/\/0.0.0.0:3000\/set_mylanguage\/ar<\/code><\/pre>\n<p>\u82f1\u8a9e\u3092\u8a2d\u5b9a\u3059\u308b\u5834\u5408:<\/p>\n<pre><code>http:\/\/0.0.0.0:3000\/set_mylanguage\/en<\/code><\/pre>\n<p><strong>YAML \u5f62\u5f0f\u306e\u30c6\u30ad\u30b9\u30c8 \u30d6\u30ed\u30c3\u30af:<\/strong><\/p>\n<p>\u307e\u305a\u4ee5\u4e0b\u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n<pre><code>$ mkdir -p config\/locales\/models\/item $ mkdir -p config\/locales\/views\/item<\/code><\/pre>\n<p>\u6b21\u306e\u884c\u3092\u30d5\u30a1\u30a4\u30eb config\/application.rb \u306b\u633f\u5165\u3057\u307e\u3059\u3002<\/p>\n<p># \u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30ed\u30b1\u30fc\u30eb\u306f :en \u3067\u3001config\/locales\/*.rb,yml \u304b\u3089\u306e\u3059\u3079\u3066\u306e\u7ffb\u8a33\u304c\u81ea\u52d5\u7684\u306b\u30ed\u30fc\u30c9\u3055\u308c\u307e\u3059\u3002<\/p>\n<pre><code>config.i18n.load_path += Dir[Rails.root.join(&#039;config&#039;, &#039;locales&#039;, &#039;models&#039;, &#039;*&#039;, &#039;*.yml&#039;).to_s] config.i18n.load_path += Dir[Rails .root.join(&#039;config&#039;, &#039;locales&#039;, &#039;views&#039;, &#039;*&#039;, &#039;*.yml&#039;).to_s] config.i18n.default_locale = :en<\/code><\/pre>\n<p>\u3053\u3053\u3067\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\u8a2d\u5b9a\/\u30ed\u30b1\u30fc\u30eb\/\u30e2\u30c7\u30eb\/\u30a2\u30a4\u30c6\u30e0<br>\u30a2\u30e9\u30d3\u30a2\u8a9e\u306e\u5834\u5408\u306f config\/locales\/models\/item\/ar.yml<br>\u82f1\u8a9e\u306e\u5834\u5408\u306f en.yml \u304c\u5b58\u5728\u3059\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<p><strong>\u82f1\u8a9e\u306e YAML:<\/strong><br>\u82f1\u8a9e\u306e\u30b7\u30b9\u30c6\u30e0\u306b\u306f\u307b\u3068\u3093\u3069\u306e\u3082\u306e\u304c\u3059\u3067\u306b\u5b58\u5728\u3057\u3066\u3044\u308b\u305f\u3081\u3001<br>\u4ee5\u4e0b\u3092 en.yml \u30d5\u30a1\u30a4\u30eb\u306b\u633f\u5165\u3057\u307e\u3059\u3002<\/p>\n<pre><code># \u30eb\u30d3\u30fc\u30a8\u30f3\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0: utf-8<\/code><\/pre>\n<pre><code>en: views: show: \u8868\u793a edit: \u7de8\u96c6 destroy: \u524a\u9664 are_you_sure: \u3088\u308d\u3057\u3044\u3067\u3059\u304b? back: \u623b\u308b item:index: title: \u3059\u3079\u3066\u306e\u30a2\u30a4\u30c6\u30e0\u306e\u30ea\u30b9\u30c8 new: title: \u65b0\u3057\u3044\u30a2\u30a4\u30c6\u30e0 flash_messages: item_was_ successly_created: &#039;\u30a2\u30a4\u30c6\u30e0\u306f\u6b63\u5e38\u306b\u4f5c\u6210\u3055\u308c\u307e\u3057\u305f\u3002<\/code><\/pre>\n<p><strong>\u30a2\u30e9\u30d3\u30a2\u8a9e YAML:<\/strong><br>en.yml \u3068\u540c\u69d8\u306b\u3001\u30a2\u30e9\u30d3\u30a2\u8a9e\u306e\u5024\/\u30c6\u30ad\u30b9\u30c8\u3092 ar.yml \u306b\u633f\u5165\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<br>Sven Fuchs \u306b\u3088\u308b\u65e2\u6210\u306e\u30c7\u30d5\u30a9\u30eb\u30c8\u7ffb\u8a33\u3092\u5f7c\u306e github \u30ea\u30dd\u30b8\u30c8\u30ea\u304b\u3089\u30b3\u30d4\u30fc\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002 <a href=\"https:\/\/github.com\/svenfuchs\/rails-i18n\">https:\/\/github.com\/svenfuchs\/rails-i18n<\/a>:<\/p>\n<pre><code>$ cd \u69cb\u6210\/\u30ed\u30b1\u30fc\u30eb<\/code><\/pre>\n<pre><code>$ \u30ab\u30fc\u30eb -O https:\/\/raw.github.com\/svenfuchs\/rails-i18n\/master\/rails\/locale\/ar.yml<\/code><\/pre>\n<p><strong>\u30d3\u30e5\u30fc\u5185\u3067\u306e\u7ffb\u8a33:<\/strong><br>\u5c5e\u6027\u306b\u306f human_attribute_name() \u3092\u4f7f\u7528\u3067\u304d\u307e\u3059\u304c\u3001\u30ea\u30f3\u30af\u306f I18n.t \u3067\u5909\u63db\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 number_to_currency() \u3092\u4f7f\u7528\u3057\u3066\u3001\u91d1\u984d\/\u4fa1\u683c\u3092\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u3055\u308c\u305f\u5f62\u5f0f\u3067\u8868\u793a\u3067\u304d\u307e\u3059\u3002<\/p>\n<p>\u4f8b:<\/p>\n<pre><code>&nbsp;<\/code><\/pre>\n<h1>&lt;% = t &#039;views.item.index.listing_items&#039; %&gt;<\/h1>\n<pre><code>\n&lt;% = link_to I18n.t(&#039;views.show&#039;),@item %&gt; &lt;%= \u30a2\u30a4\u30c6\u30e0.\u4eba\u9593\u5c5e\u6027\u540d(:\u540d\u524d) %&gt;&lt;%=\u30a2\u30a4\u30c6\u30e0.\u4eba\u9593\u5c5e\u6027\u540d(:\u8aac\u660e) %&gt; <\/code><\/pre>\n<p><strong>\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u3067\u306e Flash \u30e1\u30c3\u30bb\u30fc\u30b8\u306e\u7ffb\u8a33<\/strong><\/p>\n<pre><code>if @item.save format.html { @item \u306b\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u3001\u901a\u77e5: I18n.t(&#039;views.item.flash_messages.item_was_successly_created&#039;) } format.json { \u30ec\u30f3\u30c0\u30ea\u30f3\u30b0 json: @item\u3001\u30b9\u30c6\u30fc\u30bf\u30b9: :created\u3001\u5834\u6240: @item } else format.html { \u30ec\u30f3\u30c0\u30ea\u30f3\u30b0 \u30a2\u30af\u30b7\u30e7\u30f3: &quot;\u65b0\u3057\u3044&quot; } format.json { \u30ec\u30f3\u30c0\u30ea\u30f3\u30b0 json: @item.errors\u3001\u30b9\u30c6\u30fc\u30bf\u30b9: :unprocessable_entity } end<\/code><\/pre>\n<p>\u4ed6\u306e\u65e2\u88fd\u306e\u8a00\u8a9e\u7ffb\u8a33\u306b\u3064\u3044\u3066\u306f\u3001\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<br><a href=\"https:\/\/github.com\/svenfuchs\/rails-i18n\/tree\/master\/rails\/locale\">https:\/\/github.com\/svenfuchs\/rails-i18n\/tree\/master\/rails\/locale<\/a><\/p>\n<div><strong>\u30eb\u30d0\u30a4\u30d6\u30fb\u30b7\u30fc\u30b8\u30a7\u30a4<\/strong><\/div>\n<div>\u30b7\u30cb\u30a2 Ruby on Rails \u958b\u767a\u8005<\/div>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-4c7aa788 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"4c7aa788\" data-element_type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-74e0c222\" data-id=\"74e0c222\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-7481491d elementor-widget elementor-widget-heading\" data-id=\"7481491d\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u6700\u65b0\u306e\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3092\u8cfc\u8aad\u3059\u308b<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-21b3e2e8 elementor-widget elementor-widget-shortcode\" data-id=\"21b3e2e8\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\t\t\t\t\t<script type=\"text\/javascript\">\n\t\t\t\t\t\tvar gCaptchaSibWidget;\n                        var onloadSibCallbackInvisible = function () {\n\n                            var element = document.getElementsByClassName('sib-default-btn');\n                            var countInvisible = 0;\n                            var indexArray = [];\n                            jQuery('.sib-default-btn').each(function (index, el) {\n                                if ((jQuery(el).attr('id') == \"invisible\")) {\n                                    indexArray[countInvisible] = index;\n                                    countInvisible++\n                                }\n                            });\n\n                            jQuery('.invi-recaptcha').each(function (index, el) {\n                                grecaptcha.render(element[indexArray[index]], {\n                                    'sitekey': jQuery(el).attr('data-sitekey'),\n                                    'callback': sibVerifyCallback,\n                                });\n                            });\n                        };\n\t\t\t\t\t<\/script>\n\t\t\t\t\t                <script src=\"https:\/\/www.google.com\/recaptcha\/api.js?onload=onloadSibCallbackInvisible&render=explicit\" async defer><\/script>\n\t\t\t\t\n\t\t\t<form id=\"sib_signup_form_1\" method=\"post\" class=\"sib_signup_form\" action=\"\">\n\t\t\t\t<div class=\"sib_loader\" style=\"display:none;\"><img\n\t\t\t\t\t\t\tsrc=\"https:\/\/www.railscarma.com\/wp-includes\/images\/spinner.gif\" alt=\"\u30ed\u30fc\u30c0\"><\/div>\n\t\t\t\t<input type=\"hidden\" name=\"sib_form_action\" value=\"subscribe_form_submit\">\n\t\t\t\t<input type=\"hidden\" name=\"sib_form_id\" value=\"1\">\n                <input type=\"hidden\" name=\"sib_form_alert_notice\" value=\"Please fill out this field\">\n                <input type=\"hidden\" name=\"sib_form_invalid_email_notice\" value=\"Your email address is invalid\">\n                <input type=\"hidden\" name=\"sib_security\" value=\"d7f7626ab9\">\n\t\t\t\t<div class=\"sib_signup_box_inside_1\">\n\t\t\t\t\t<div style=\"\/*display:none*\/\" class=\"sib_msg_disp\">\n\t\t\t\t\t<\/div>\n                                            <div id=\"sib_captcha_invisible\" class=\"invi-recaptcha\" data-sitekey=\"6LdikOAaAAAAAJ6SWrrKVQrtw7TQpQAEnv0HS0G3\"><\/div>\n                    \t\t\t\t\t<p class=\"sib-email-area\">\r\n    <label class=\"sib-email-area\"><\/label>\r\n    <input type=\"email\" class=\"sib-email-area\" name=\"email\" required=\"required\" placeholder=\"\u96fb\u5b50\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\">\r\n<\/p>\r\n<p class=\"sib-NAME-area\">\r\n    <label class=\"sib-NAME-area\"><\/label>\r\n    <input type=\"text\" class=\"sib-NAME-area\" name=\"NAME\" placeholder=\"\u540d\u524d\">\r\n<\/p>\r\n<p>\r\n    <input type=\"submit\" id=\"invisible\" class=\"sib-default-btn\" value=\"\u8cfc\u8aad\u3059\u308b\">\r\n<\/p>\t\t\t\t<\/div>\n\t\t\t<input type=\"hidden\" name=\"trp-form-language\" value=\"ja\"\/><\/form>\n\t\t\t<style>\n\t\t\t\tform#sib_signup_form_1 p.sib-alert-message {\n    padding: 6px 12px;\n    margin-bottom: 20px;\n    border: 1px solid transparent;\n    border-radius: 4px;\n    -webkit-box-sizing: border-box;\n    -moz-box-sizing: border-box;\n    box-sizing: border-box;\n}\nform#sib_signup_form_1 p.sib-alert-message-error {\n    background-color: #f2dede;\n    border-color: #ebccd1;\n    color: #a94442;\n}\nform#sib_signup_form_1 p.sib-alert-message-success {\n    background-color: #dff0d8;\n    border-color: #d6e9c6;\n    color: #3c763d;\n}\nform#sib_signup_form_1 p.sib-alert-message-warning {\n    background-color: #fcf8e3;\n    border-color: #faebcc;\n    color: #8a6d3b;\n}\n\t\t\t<\/style>\n\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t  <div class=\"related-post slider\">\r\n        <div class=\"headline\">\u95a2\u9023\u8a18\u4e8b<\/div>\r\n    <div class=\"post-list owl-carousel\">\r\n\r\n            <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"\u30ab\u30df\u30ca\u30ea\u30b8\u30a7\u30e0\" href=\"https:\/\/www.railscarma.com\/ja\/%e3%83%96%e3%83%ad%e3%82%b0\/%e6%8a%80%e8%a1%93%e8%ab%96%e6%96%87\/%e3%82%ab%e3%83%9f%e3%83%8a%e3%83%aa%e3%82%b8%e3%82%a7%e3%83%a0\/?related_post_from=37277\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/04\/kaminari-gem.jpg\" class=\"attachment-full size-full wp-post-image\" alt=\"\u30ab\u30df\u30ca\u30ea\u30b8\u30a7\u30e0\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/04\/kaminari-gem.jpg 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/04\/kaminari-gem-300x113.jpg 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/04\/kaminari-gem-768x288.jpg 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"\u30ab\u30df\u30ca\u30ea\u30b8\u30a7\u30e0\" href=\"https:\/\/www.railscarma.com\/ja\/%e3%83%96%e3%83%ad%e3%82%b0\/%e6%8a%80%e8%a1%93%e8%ab%96%e6%96%87\/%e3%82%ab%e3%83%9f%e3%83%8a%e3%83%aa%e3%82%b8%e3%82%a7%e3%83%a0\/?related_post_from=37277\">\r\n        \u30ab\u30df\u30ca\u30ea\u30b8\u30a7\u30e0  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"\u306a\u305c2026\u5e74\u306bRuby on Rails\u958b\u767a\u8005\u3092\u96c7\u3046\u306e\u304b\uff1f\" href=\"https:\/\/www.railscarma.com\/ja\/%e3%83%96%e3%83%ad%e3%82%b0\/%e3%83%ad%e3%83%bc\/why-to-hire-ruby-on-rails-developers\/?related_post_from=30627\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2019\/01\/why-to-hire-ruby-on-rails-developers-in-2022.jpg\" class=\"attachment-full size-full wp-post-image\" alt=\"2022 \u5e74\u306b Ruby on Rails \u958b\u767a\u8005\u3092\u96c7\u7528\u3059\u308b\u7406\u7531\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2019\/01\/why-to-hire-ruby-on-rails-developers-in-2022.jpg 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2019\/01\/why-to-hire-ruby-on-rails-developers-in-2022-300x113.jpg 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2019\/01\/why-to-hire-ruby-on-rails-developers-in-2022-768x288.jpg 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"\u306a\u305c2026\u5e74\u306bRuby on Rails\u958b\u767a\u8005\u3092\u96c7\u3046\u306e\u304b\uff1f\" href=\"https:\/\/www.railscarma.com\/ja\/%e3%83%96%e3%83%ad%e3%82%b0\/%e3%83%ad%e3%83%bc\/why-to-hire-ruby-on-rails-developers\/?related_post_from=30627\">\r\n        \u306a\u305c2026\u5e74\u306bRuby on Rails\u958b\u767a\u8005\u3092\u96c7\u3046\u306e\u304b\uff1f  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"\u30a8\u30f3\u30bf\u30fc\u30d7\u30e9\u30a4\u30ba \u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u958b\u767a\u306b\u304a\u3051\u308b\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2 \u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u306e\u91cd\u8981\u6027\" href=\"https:\/\/www.railscarma.com\/ja\/%e3%83%96%e3%83%ad%e3%82%b0\/%e3%83%ad%e3%83%bc\/%e3%82%a8%e3%83%b3%e3%82%bf%e3%83%bc%e3%83%97%e3%83%a9%e3%82%a4%e3%82%ba%e3%83%bb%e3%82%bd%e3%83%95%e3%83%88%e3%82%a6%e3%82%a7%e3%82%a2%e9%96%8b%e7%99%ba%e3%81%ab%e3%81%8a%e3%81%91%e3%82%8b%e3%82%bd\/?related_post_from=36250\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/06\/Importance-of-Software-Architecture-in-enterprise-software-development.jpg\" class=\"attachment-full size-full wp-post-image\" alt=\"\u30a8\u30f3\u30bf\u30fc\u30d7\u30e9\u30a4\u30ba \u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u958b\u767a\u306b\u304a\u3051\u308b\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2 \u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u306e\u91cd\u8981\u6027\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/06\/Importance-of-Software-Architecture-in-enterprise-software-development.jpg 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/06\/Importance-of-Software-Architecture-in-enterprise-software-development-300x113.jpg 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/06\/Importance-of-Software-Architecture-in-enterprise-software-development-768x288.jpg 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"\u30a8\u30f3\u30bf\u30fc\u30d7\u30e9\u30a4\u30ba \u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u958b\u767a\u306b\u304a\u3051\u308b\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2 \u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u306e\u91cd\u8981\u6027\" href=\"https:\/\/www.railscarma.com\/ja\/%e3%83%96%e3%83%ad%e3%82%b0\/%e3%83%ad%e3%83%bc\/%e3%82%a8%e3%83%b3%e3%82%bf%e3%83%bc%e3%83%97%e3%83%a9%e3%82%a4%e3%82%ba%e3%83%bb%e3%82%bd%e3%83%95%e3%83%88%e3%82%a6%e3%82%a7%e3%82%a2%e9%96%8b%e7%99%ba%e3%81%ab%e3%81%8a%e3%81%91%e3%82%8b%e3%82%bd\/?related_post_from=36250\">\r\n        \u30a8\u30f3\u30bf\u30fc\u30d7\u30e9\u30a4\u30ba \u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u958b\u767a\u306b\u304a\u3051\u308b\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2 \u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u306e\u91cd\u8981\u6027  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Ruby IDE: Ruby on Rails \u958b\u767a\u306b\u6700\u9069\u306a IDE\" href=\"https:\/\/www.railscarma.com\/ja\/%e3%83%96%e3%83%ad%e3%82%b0\/%e3%83%ad%e3%83%bc\/ruby-ide-ruby-on-rails-%e9%96%8b%e7%99%ba%e3%81%ab%e6%9c%80%e9%81%a9%e3%81%aa%e3%82%a2%e3%82%a4%e3%83%87%e3%82%a2\/?related_post_from=36125\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/01\/BEST-IDES-FOR-RUBY-ON-RAILS-DEVELOPMENT.jpg\" class=\"attachment-full size-full wp-post-image\" alt=\"Ruby on Rails \u958b\u767a\u306b\u6700\u9069\u306a\u30a2\u30a4\u30c7\u30a2\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/01\/BEST-IDES-FOR-RUBY-ON-RAILS-DEVELOPMENT.jpg 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/01\/BEST-IDES-FOR-RUBY-ON-RAILS-DEVELOPMENT-300x113.jpg 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/01\/BEST-IDES-FOR-RUBY-ON-RAILS-DEVELOPMENT-768x288.jpg 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"Ruby IDE: Ruby on Rails \u958b\u767a\u306b\u6700\u9069\u306a IDE\" href=\"https:\/\/www.railscarma.com\/ja\/%e3%83%96%e3%83%ad%e3%82%b0\/%e3%83%ad%e3%83%bc\/ruby-ide-ruby-on-rails-%e9%96%8b%e7%99%ba%e3%81%ab%e6%9c%80%e9%81%a9%e3%81%aa%e3%82%a2%e3%82%a4%e3%83%87%e3%82%a2\/?related_post_from=36125\">\r\n        Ruby IDE: Ruby on Rails \u958b\u767a\u306b\u6700\u9069\u306a IDE  <\/a>\r\n\r\n        <\/div>\r\n      \r\n  <\/div>\r\n\r\n  <script>\r\n      <\/script>\r\n  <style>\r\n    .related-post {}\r\n\r\n    .related-post .post-list {\r\n      text-align: left;\r\n          }\r\n\r\n    .related-post .post-list .item {\r\n      margin: 10px;\r\n      padding: 10px;\r\n          }\r\n\r\n    .related-post .headline {\r\n      font-size: 14px !important;\r\n      color: #999999 !important;\r\n          }\r\n\r\n    .related-post .post-list .item .post_thumb {\r\n      max-height: 220px;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n          }\r\n\r\n    .related-post .post-list .item .post_title {\r\n      font-size: 14px;\r\n      color: #000000;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n      text-decoration: none;\r\n          }\r\n\r\n    .related-post .post-list .item .post_excerpt {\r\n      font-size: 12px;\r\n      color: #3f3f3f;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n      text-decoration: none;\r\n          }\r\n\r\n    .related-post .owl-dots .owl-dot {\r\n          }\r\n\r\n      <\/style>\r\n      <script>\r\n      jQuery(document).ready(function($) {\r\n        $(\".related-post .post-list\").owlCarousel({\r\n          items: 2,\r\n          responsiveClass: true,\r\n          responsive: {\r\n            0: {\r\n              items: 1,\r\n            },\r\n            768: {\r\n              items: 2,\r\n            },\r\n            1200: {\r\n              items: 2,\r\n            }\r\n          },\r\n                      rewind: true,\r\n                                loop: true,\r\n                                center: false,\r\n                                autoplay: true,\r\n            autoplayHoverPause: true,\r\n                                nav: true,\r\n            navSpeed: 1000,\r\n            navText: ['<i class=\"fas fa-chevron-left\"><\/i>', '<i class=\"fas fa-chevron-right\"><\/i>'],\r\n                                dots: false,\r\n            dotsSpeed: 1200,\r\n                                                    rtl: false,\r\n          \r\n        });\r\n      });\r\n    <\/script>\r\n  <\/div>","protected":false},"excerpt":{"rendered":"<p>Rails gem \u30a2\u30d7\u30ed\u30fc\u30c1\u3001MySQL \u30a2\u30d7\u30ed\u30fc\u30c1\u3001\u591a\u8a00\u8a9e Rails \u69cb\u9020 \u4e16\u754c\u306e\u307b\u3068\u3093\u3069\u306e\u4eba\u306f\u82f1\u8a9e\u3092\u8a71\u305b\u307e\u305b\u3093\u3002\u305d\u3053\u3067\u56fd\u969b\u5316\u3068\u30ed\u30fc\u30ab\u30ea\u30bc\u30fc\u30b7\u30e7\u30f3\u304c\u767b\u5834\u3057\u307e\u3059\u3002Rails \u306b\u306f\u512a\u308c\u305f i18n API \u304c\u3042\u308a\u307e\u3059\u3002\u53c2\u8003: http:\/\/guides.rubyonrails.org\/i18n.html \u3053\u308c\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5358\u4e00\u306e\u30ab\u30b9\u30bf\u30e0\u8a00\u8a9e\u306b\u7ffb\u8a33\u3059\u308b\u305f\u3081\u306e\u4f7f\u3044\u3084\u3059\u304f\u62e1\u5f35\u53ef\u80fd\u306a\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002\u82f1\u8a9e\u4ee5\u5916\u306e\u5834\u5408\u3001\u307e\u305f\u306f\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u591a\u8a00\u8a9e\u30b5\u30dd\u30fc\u30c8\u3092\u63d0\u4f9b\u3059\u308b\u5834\u5408\u3002 I18n API: I18n API \u306e\u6700\u3082\u91cd\u8981\u306a\u30e1\u30bd\u30c3\u30c9\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002 # \u30eb\u30c3\u30af\u30a2\u30c3\u30d7 \u30c6\u30ad\u30b9\u30c8\u306e\u7ffb\u8a33 \u30ed\u30fc\u30ab\u30eb\u5316 # \u65e5\u4ed8\u3068\u6642\u523b\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u30ed\u30fc\u30ab\u30eb\u5f62\u5f0f\u306b\u30ed\u30fc\u30ab\u30e9\u30a4\u30ba \u3053\u308c\u3089\u306b\u306f #t \u304a\u3088\u3073 #l \u3068\u3044\u3046\u30a8\u30a4\u30ea\u30a2\u30b9\u304c\u3042\u308b\u305f\u3081\u3001\u6b21\u306e\u3088\u3046\u306b\u4f7f\u7528\u3067\u304d\u307e\u3059: I18n.t &#039;app.title&#039; I18n.l Time.now Rails-i18n gem:\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb:Gemfile \u306b\u8ffd\u52a0: gem &#039;rails-i18n&#039;\u3001github: &#039;svenfuchs\/rails-i18n&#039;\u3001\u30d6\u30e9\u30f3\u30c1: &#039;master&#039; \u2026<\/p>\n<p class=\"read-more\"> <a class=\"\" href=\"https:\/\/www.railscarma.com\/ja\/%e3%83%96%e3%83%ad%e3%82%b0\/ruby-regex-match-guide-with-examples\/\"> <span class=\"screen-reader-text\">Ruby\u6b63\u898f\u8868\u73fe\u30de\u30c3\u30c1\u30ac\u30a4\u30c9\uff082026\uff09\u4f8b\u4ed8\u304d<\/span> \u3082\u3063\u3068\u8aad\u3080 \"<\/a><\/p>","protected":false},"author":1,"featured_media":31860,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[384],"tags":[],"class_list":["post-25291","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technical-articles"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How to make your Rails Application Multilingual - RailsCarma - Ruby on Rails Development Company specializing in Offshore Development<\/title>\n<meta name=\"description\" content=\"Rails gem approach, MySQL approach and a Multilingual Rails structure Most of\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.railscarma.com\/ja\/\u30d6\u30ed\u30b0\/\u6280\u8853\u8ad6\u6587\/make-rails-application-multilingual\/\" \/>\n<meta property=\"og:locale\" content=\"ja_JP\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to make your Rails Application Multilingual - RailsCarma - Ruby on Rails Development Company specializing in Offshore Development\" \/>\n<meta property=\"og:description\" content=\"Rails gem approach, MySQL approach and a Multilingual Rails structure Most of\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.railscarma.com\/ja\/\u30d6\u30ed\u30b0\/\u6280\u8853\u8ad6\u6587\/make-rails-application-multilingual\/\" \/>\n<meta property=\"og:site_name\" content=\"RailsCarma - Ruby on Rails Development Company specializing in Offshore Development\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/RailsCarma\/\" \/>\n<meta property=\"article:published_time\" content=\"2016-10-10T12:24:14+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-09-06T08:22:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/10\/Multilingual-1-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"300\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@railscarma\" \/>\n<meta name=\"twitter:site\" content=\"@railscarma\" \/>\n<meta name=\"twitter:label1\" content=\"\u57f7\u7b46\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593\" \/>\n\t<meta name=\"twitter:data2\" content=\"7\u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21\"},\"headline\":\"How to make your Rails Application Multilingual\",\"datePublished\":\"2016-10-10T12:24:14+00:00\",\"dateModified\":\"2022-09-06T08:22:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/\"},\"wordCount\":777,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.railscarma.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/10\/Multilingual-1-1.jpg\",\"articleSection\":[\"Technical Articles\"],\"inLanguage\":\"ja\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/\",\"url\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/\",\"name\":\"How to make your Rails Application Multilingual - RailsCarma - Ruby on Rails Development Company specializing in Offshore Development\",\"isPartOf\":{\"@id\":\"https:\/\/www.railscarma.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/10\/Multilingual-1-1.jpg\",\"datePublished\":\"2016-10-10T12:24:14+00:00\",\"dateModified\":\"2022-09-06T08:22:58+00:00\",\"description\":\"Rails gem approach, MySQL approach and a Multilingual Rails structure Most of\",\"breadcrumb\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/#breadcrumb\"},\"inLanguage\":\"ja\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/#primaryimage\",\"url\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/10\/Multilingual-1-1.jpg\",\"contentUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/10\/Multilingual-1-1.jpg\",\"width\":800,\"height\":300},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.railscarma.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to make your Rails Application Multilingual\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.railscarma.com\/#website\",\"url\":\"https:\/\/www.railscarma.com\/\",\"name\":\"RailsCarma - Ruby on Rails Development Company specializing in Offshore Development\",\"description\":\"RailsCarma is a Ruby on Rails Development Company in Bangalore. We specialize in Offshore Ruby on Rails Development based out in USA and India. Hire experienced Ruby on Rails developers for the ultimate Web Experience.\",\"publisher\":{\"@id\":\"https:\/\/www.railscarma.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.railscarma.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ja\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.railscarma.com\/#organization\",\"name\":\"RailsCarma\",\"url\":\"https:\/\/www.railscarma.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png\",\"contentUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png\",\"width\":200,\"height\":46,\"caption\":\"RailsCarma\"},\"image\":{\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/RailsCarma\/\",\"https:\/\/x.com\/railscarma\",\"https:\/\/www.linkedin.com\/company\/railscarma\/\",\"https:\/\/myspace.com\/railscarma\",\"https:\/\/in.pinterest.com\/railscarma\/\",\"https:\/\/www.youtube.com\/channel\/UCx3Wil-aAnDARuatTEyMdpg\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/308867ca6c81f3aba146080c601000087180326f752c4116849ea9f514c6a4fa?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/308867ca6c81f3aba146080c601000087180326f752c4116849ea9f514c6a4fa?s=96&d=mm&r=g\",\"caption\":\"admin\"},\"sameAs\":[\"https:\/\/www.railscarma.com\/hire-ruby-on-rails-developer\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to make your Rails Application Multilingual - RailsCarma - Ruby on Rails Development Company specializing in Offshore Development","description":"Rails gem approach, MySQL approach and a Multilingual Rails structure Most of","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.railscarma.com\/ja\/\u30d6\u30ed\u30b0\/\u6280\u8853\u8ad6\u6587\/make-rails-application-multilingual\/","og_locale":"ja_JP","og_type":"article","og_title":"How to make your Rails Application Multilingual - RailsCarma - Ruby on Rails Development Company specializing in Offshore Development","og_description":"Rails gem approach, MySQL approach and a Multilingual Rails structure Most of","og_url":"https:\/\/www.railscarma.com\/ja\/\u30d6\u30ed\u30b0\/\u6280\u8853\u8ad6\u6587\/make-rails-application-multilingual\/","og_site_name":"RailsCarma - Ruby on Rails Development Company specializing in Offshore Development","article_publisher":"https:\/\/www.facebook.com\/RailsCarma\/","article_published_time":"2016-10-10T12:24:14+00:00","article_modified_time":"2022-09-06T08:22:58+00:00","og_image":[{"width":800,"height":300,"url":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/10\/Multilingual-1-1.jpg","type":"image\/jpeg"}],"author":"admin","twitter_card":"summary_large_image","twitter_creator":"@railscarma","twitter_site":"@railscarma","twitter_misc":{"\u57f7\u7b46\u8005":"admin","\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593":"7\u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/#article","isPartOf":{"@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/"},"author":{"name":"admin","@id":"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21"},"headline":"How to make your Rails Application Multilingual","datePublished":"2016-10-10T12:24:14+00:00","dateModified":"2022-09-06T08:22:58+00:00","mainEntityOfPage":{"@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/"},"wordCount":777,"commentCount":0,"publisher":{"@id":"https:\/\/www.railscarma.com\/#organization"},"image":{"@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/#primaryimage"},"thumbnailUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/10\/Multilingual-1-1.jpg","articleSection":["Technical Articles"],"inLanguage":"ja","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/","url":"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/","name":"How to make your Rails Application Multilingual - RailsCarma - Ruby on Rails Development Company specializing in Offshore Development","isPartOf":{"@id":"https:\/\/www.railscarma.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/#primaryimage"},"image":{"@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/#primaryimage"},"thumbnailUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/10\/Multilingual-1-1.jpg","datePublished":"2016-10-10T12:24:14+00:00","dateModified":"2022-09-06T08:22:58+00:00","description":"Rails gem approach, MySQL approach and a Multilingual Rails structure Most of","breadcrumb":{"@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/#breadcrumb"},"inLanguage":"ja","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/"]}]},{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/#primaryimage","url":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/10\/Multilingual-1-1.jpg","contentUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/10\/Multilingual-1-1.jpg","width":800,"height":300},{"@type":"BreadcrumbList","@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/make-rails-application-multilingual\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.railscarma.com\/"},{"@type":"ListItem","position":2,"name":"How to make your Rails Application Multilingual"}]},{"@type":"WebSite","@id":"https:\/\/www.railscarma.com\/#website","url":"https:\/\/www.railscarma.com\/","name":"RailsCarma - \u30aa\u30d5\u30b7\u30e7\u30a2\u958b\u767a\u306b\u7279\u5316\u3057\u305f Ruby on Rails \u958b\u767a\u4f1a\u793e","description":"RailsCarma \u306f\u30d0\u30f3\u30ac\u30ed\u30fc\u30eb\u306e Ruby on Rails \u958b\u767a\u4f1a\u793e\u3067\u3059\u3002\u5f53\u793e\u306f\u7c73\u56fd\u3068\u30a4\u30f3\u30c9\u3092\u62e0\u70b9\u3068\u3059\u308b\u30aa\u30d5\u30b7\u30e7\u30a2 Ruby on Rails \u958b\u767a\u3092\u5c02\u9580\u3068\u3057\u3066\u3044\u307e\u3059\u3002\u7d4c\u9a13\u8c4a\u5bcc\u306a Ruby on Rails \u958b\u767a\u8005\u3092\u96c7\u3063\u3066\u3001\u7a76\u6975\u306e Web \u30a8\u30af\u30b9\u30da\u30ea\u30a8\u30f3\u30b9\u3092\u5b9f\u73fe\u3057\u307e\u3057\u3087\u3046\u3002","publisher":{"@id":"https:\/\/www.railscarma.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.railscarma.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ja"},{"@type":"Organization","@id":"https:\/\/www.railscarma.com\/#organization","name":"\u30ec\u30fc\u30eb\u30ab\u30fc\u30de","url":"https:\/\/www.railscarma.com\/","logo":{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png","contentUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png","width":200,"height":46,"caption":"RailsCarma"},"image":{"@id":"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/RailsCarma\/","https:\/\/x.com\/railscarma","https:\/\/www.linkedin.com\/company\/railscarma\/","https:\/\/myspace.com\/railscarma","https:\/\/in.pinterest.com\/railscarma\/","https:\/\/www.youtube.com\/channel\/UCx3Wil-aAnDARuatTEyMdpg"]},{"@type":"Person","@id":"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21","name":"\u7ba1\u7406\u8005","image":{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/www.railscarma.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/308867ca6c81f3aba146080c601000087180326f752c4116849ea9f514c6a4fa?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/308867ca6c81f3aba146080c601000087180326f752c4116849ea9f514c6a4fa?s=96&d=mm&r=g","caption":"admin"},"sameAs":["https:\/\/www.railscarma.com\/hire-ruby-on-rails-developer\/"]}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.railscarma.com\/ja\/wp-json\/wp\/v2\/posts\/25291","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.railscarma.com\/ja\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.railscarma.com\/ja\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/ja\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/ja\/wp-json\/wp\/v2\/comments?post=25291"}],"version-history":[{"count":0,"href":"https:\/\/www.railscarma.com\/ja\/wp-json\/wp\/v2\/posts\/25291\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/ja\/wp-json\/wp\/v2\/media\/31860"}],"wp:attachment":[{"href":"https:\/\/www.railscarma.com\/ja\/wp-json\/wp\/v2\/media?parent=25291"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.railscarma.com\/ja\/wp-json\/wp\/v2\/categories?post=25291"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.railscarma.com\/ja\/wp-json\/wp\/v2\/tags?post=25291"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}