{"id":3530,"date":"2020-04-24T08:53:31","date_gmt":"2020-04-24T08:53:31","guid":{"rendered":"http:\/\/the-codest.localhost\/blog\/rails-and-other-means-of-transport\/"},"modified":"2026-04-24T11:27:38","modified_gmt":"2026-04-24T11:27:38","slug":"sliedes-un-citi-transporta-lidzekli","status":"publish","type":"post","link":"https:\/\/thecodest.co\/lv\/blog\/rails-and-other-means-of-transport\/","title":{"rendered":"Sliedes un citi transporta l\u012bdzek\u013ci"},"content":{"rendered":"<h2>Popul\u0101ras Rails un Rails-way probl\u0113mas<\/h2>\n<h3>Probl\u0113mas, kas min\u0113tas: <a href=\"https:\/\/web.archive.org\/web\/20210306055107\/https:\/\/upgrow.shopify.io\/code-smells-in-rails-apps\" rel=\"nofollow\">raksts par Shopify<\/a><\/h3>\n<ul>\n<li>mar\u0161rut\u0113\u0161ana,<\/li>\n<li>pirms darb\u012bbas, <\/li>\n<li>lielas darb\u012bbas kontrolieros, <\/li>\n<li>priv\u0101t\u0101s metodes kontrolieros, <\/li>\n<li>vienreiz izmantotie sajaukumi, <\/li>\n<li>lo\u0123ika skatos, <\/li>\n<li>ActiveRecord izsaukumi, <\/li>\n<li>Asoci\u0101cijas, <\/li>\n<li>\u201ctrekni mode\u013ci.\u201d<\/li>\n<\/ul>\n<h3>Papildu probl\u0113mas<\/h3>\n<ul>\n<li>Akt\u012bvo ierakstu apstiprin\u0101jumi, <\/li>\n<li>netie\u0161\u0101, nevis tie\u0161\u0101, <\/li>\n<li>\u013caunpr\u0101t\u012bga DRY lieto\u0161ana, <\/li>\n<li>deleg\u0101cijas asoci\u0101cij\u0101s, <\/li>\n<li>pakalpojumu izsaukumi mode\u013cos.<\/li>\n<\/ul>\n<h2>Rails alternat\u012bvas<\/h2>\n<p>Kad runa ir par <strong><a href=\"https:\/\/thecodest.co\/lv\/blog\/ways-to-increase-your-rails-performance\/\">Sliedes<\/a><\/strong> in the <strong><a href=\"https:\/\/thecodest.co\/lv\/blog\/hire-ror-developer\/\">Rub\u012bns<\/a> <\/strong>pasaul\u0113 mums ir vair\u0101kas alternat\u012bvas. Citas uz Rack balst\u012btas sist\u0113mas ir \u0161\u0101das: - <b>Sinatra<\/b>, - <strong>Roda<\/strong>, -<b> Hanami<\/b>.<\/p>\n<h3>Ar ko tie ir unik\u0101li?<\/h3>\n<p>Gan Sinatra, gan Roda pied\u0101v\u0101 <a href=\"https:\/\/thecodest.co\/lv\/blog\/why-us-companies-are-opting-for-polish-developers\/\">mums<\/a> bloka mar\u0161rut\u0113\u0161anas sintakse, bet Sinatra mar\u0161rut\u0113\u0161ana ir saraksts, bet Roda - koks. Abos ietvarstrukt\u016br\u0101s ar mode\u013ca sl\u0101\u0146a implement\u0101ciju mums j\u0101tiek gal\u0101 pa\u0161iem. Roda gad\u012bjum\u0101 ir lietder\u012bgi izmantot Sequel gem. <\/p>\n<p>Roda ir iedvesmojusies no Sinatras. T\u0101 pati par sevi ir \u013coti viegla, ta\u010du tai ir daudz spraud\u0146u. <\/p>\n<p>Hanami ir vistuv\u0101k<strong> Sliedes<\/strong> attiec\u012bb\u0101 uz jom\u0101m, uz kur\u0101m attiecas sist\u0113ma. Svar\u012bg\u0101k\u0101s at\u0161\u0137ir\u012bbas izmanto\u0161anas zi\u0146\u0101 ir \u0161\u0101das: <\/p>\n<ul>\n<li>kontrolieri <strong>Sliedes<\/strong> pret darb\u012bb\u0101m Hanami laik\u0101,<\/li>\n<li>\u012bpa\u0161as klases\/objekti, kas apstr\u0101d\u0101 konkr\u0113tu HTTP piepras\u012bjumu, nevis viens kontrolieris darb\u012bb\u0101m, kas saist\u012btas ar konkr\u0113tu resursu (modeli),<\/li>\n<li>mode\u013ca sl\u0101nis, kas balst\u012bts uz repozitorijiem un vien\u012bb\u0101m, atdalot notur\u012bbu no p\u0101r\u0113j\u0101s lietojumprogrammas, nevis akt\u012bvo ierakstu modeli. <\/li>\n<\/ul>\n<p>Hanami 1. versija stingri ierobe\u017eo ROM, uz kura t\u0101 ir balst\u012bta, izmanto\u0161anu (3. versija, un t\u0101 jau ir 5. versija), t\u0101p\u0113c nav v\u0113rts izmantot tur pied\u0101v\u0101to mode\u013ca sl\u0101ni. Tom\u0113r, t\u0101 k\u0101 tas ir \u013coti atv\u0113rts ietvars, ir diezgan viegli taj\u0101 ieviest savu modeli. <\/p>\n<h2>Papildin\u0101jumi slied\u0113m<\/h2>\n<p>Ir v\u0113rts izmantot risin\u0101jumus, kas nav atkar\u012bgi no <strong>Sliedes<\/strong> un ir tuv\u0101k \u201ct\u012brai\u201d <strong>Rub\u012bns<\/strong>. Prezent\u0101cij\u0101 min\u0113tie r\u012bki ir \u0161\u0101di: <\/p>\n<ul>\n<li>Sequel (ORM, alternat\u012bva ActiveRecord),<\/li>\n<li>ROM (objektu kart\u0113t\u0101js), <\/li>\n<li>dry-rb bibliot\u0113kas: dry-validations, dry-system un dry-monads.<\/li>\n<\/ul>\n<p>Sequel ir viegli ievietot <a href=\"https:\/\/thecodest.co\/lv\/dictionary\/why-do-projects-fail\/\">projekts<\/a>, t\u0101 ir balst\u012bta uz spraud\u0146iem un \u012bsteno ar\u012b akt\u012bvo ierakstu modeli. Tam ir lab\u0101ks zema l\u012bme\u0146a vaic\u0101jumu atbalsts nek\u0101 <strong>Sliedes<\/strong>\u2018 ActiveRecord. <\/p>\n<p>ROM izmanto Sequel, bet t\u0101 koncepcija ir tulkot ierakstus datub\u0101z\u0113(-\u0113s) un datub\u0101z\u0113(-\u0113s).<strong> Rub\u012bns<\/strong> objekti. T\u0101 m\u0113r\u0137is ir \u0101trums un <a href=\"https:\/\/thecodest.co\/lv\/blog\/app-data-collection-security-risks-value-and-types-explored\/\">dati<\/a> p\u0101rveido\u0161ana. Skaidri nodala notur\u012bbas sl\u0101ni lietojumprogramm\u0101. <\/p>\n<p>Dry-rb bibliot\u0113kas ir \u013coti noder\u012bgi r\u012bki: <\/p>\n<ul>\n<li>sauso valid\u0101ciju ir \u013coti viegli izmantot. <a href=\"https:\/\/thecodest.co\/lv\/blog\/compare-staff-augmentation-firms-that-excel-in-api-team-staffing-for-financial-technology-projects\/\">API<\/a> projektiem un nodro\u0161ina lielisku kontroli p\u0101r ien\u0101ko\u0161o datu pareiz\u012bbu, <\/li>\n<li>dry-system ir nepiecie\u0161ama neliela pieredze un paciet\u012bba, lai izstr\u0101d\u0101t\u0101ji to saprastu, ta\u010du t\u0101 \u013cauj \u013coti elast\u012bgi p\u0101rvald\u012bt atkar\u012bbas lietojumprogramm\u0101 un izol\u0113ti iel\u0101d\u0113t projekta komponentus; ja m\u0113s v\u0113lamies izmantot \u0161o bibliot\u0113ku <strong>Sliedes<\/strong>, m\u0113s varam izmantot saus\u0101s sliedes, <\/li>\n<li>saus\u0101s mon\u0101des teor\u0113tiski ir sare\u017e\u0123\u012bts j\u0113dziens, bet praks\u0113 tas ir viegl\u0101k saprotams, rezult\u0101t\u0101 mon\u0101des var b\u016bt lielisks veids, k\u0101 palielin\u0101t las\u0101m\u012bbu. <a href=\"https:\/\/thecodest.co\/lv\/dictionary\/what-is-code-refactoring\/\">kods<\/a> apl\u016bkojot konkr\u0113tus gad\u012bjumus, nevis sazaroties ar if. <\/li>\n<\/ul>\n<h2>Secin\u0101jumi<\/h2>\n<p>Vislab\u0101k ir izmantot <strong>Sliedes<\/strong> lai neb\u016btu j\u0101izmanto<strong> Sliedes<\/strong> vienu dienu. <\/p>\n<h2>Avoti<\/h2>\n<p><strong>Raksti<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/web.archive.org\/web\/20210306055107\/https:\/\/upgrow.shopify.io\/code-smells-in-rails-apps\">Koda smar\u017eas Rails lietotn\u0113s (p\u0113c Shopify)<\/a><\/li>\n<li><a href=\"https:\/\/guides.hanamirb.org\/v1.3\/repositories\/overview\/\">Hanami: repozytoria<\/a><\/li>\n<li><a href=\"https:\/\/guides.rubyonrails.org\">Rails ce\u013cve\u017ei<\/a><\/li>\n<\/ul>\n<p><strong>R\u0101mji<\/strong><\/p>\n<ul>\n<li><a href=\"http:\/\/sinatrarb.com\">Sinatra<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/jeremyevans\/roda\">Roda<\/a><\/li>\n<li><a href=\"https:\/\/hanamirb.org\">Hanami<\/a><\/li>\n<\/ul>\n<p><strong>D\u0101rgakme\u0146i<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/jeremyevans\/sequel\">Turpin\u0101jums<\/a><\/li>\n<li><a href=\"https:\/\/rom-rb.org\">ROM<\/a><\/li>\n<li><a href=\"https:\/\/dry-rb.org\">Bibliot\u0113kas dry-rb<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/ruby-json-schema\/json-schema\">Ruby JSON sh\u0113mas validators (json-schema)<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/ddnexus\/pagy\">Pagy<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/jeremyevans\/rodauth\">Rodauth<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/janko\/rodauth-rails\">rodauth-rails<\/a><\/li>\n<\/ul>\n<p><strong>Specifik\u0101cijas<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/rack\/rack\/blob\/master\/SPEC.rdoc#label-Rack+applications\">Plaukts<\/a><\/li>\n<li><a href=\"https:\/\/json-schema.org\/specification.html\">JSON sh\u0113ma<\/a><\/li>\n<\/ul>\n<p><article-inline-code-review><\/article-inline-code-review><\/p>\n<p><strong>Las\u012bt vair\u0101k:<\/strong><\/p>\n<p><a href=\"https:\/\/thecodest.co\/blog\/ruby-on-jets-ruby-aws-lambda\/\">Kas ir Ruby on Jets un k\u0101 ar to izveidot lietotni?<\/a><\/p>\n<p><a href=\"https:\/\/thecodest.co\/blog\/vuelendar-a-new-codests-project-based-on-vue-js\/\">1TP61Kalend\u0101rijs. Jauns Codest projekts, kas balst\u012bts uz Vue.js<\/a><\/p>\n<p><a href=\"https:\/\/thecodest.co\/blog\/codests-weekly-report-of-best-tech-articles-building-software-for-50m-concurrent-sockets-10\/\">Codest ikned\u0113\u013cas p\u0101rskats par lab\u0101kajiem tehnolo\u0123iju rakstiem. Programmat\u016bras veido\u0161ana 50M vienlaic\u012bgu ligzdu (10)<\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>Rails ir ar Rack sader\u012bga sist\u0113ma, kas paredz\u0113ta \u0101trai lietojumprogrammu izstr\u0101dei. Diem\u017e\u0113l \u201cviss no kastes\u201d pieeja un akla Rails-way uzved\u012bba bie\u017ei vien izraisa lietojumprogrammas koda kvalit\u0101tes zudumu gan uztveres (las\u0101m\u012bbas), gan darb\u012bbas zi\u0146\u0101.<\/p>","protected":false},"author":2,"featured_media":3531,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[8],"tags":[],"class_list":["post-3530","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software-development"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.3 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Rails and Other Means of Transport - The Codest<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/thecodest.co\/lv\/emuars\/sliedes-un-citi-transporta-lidzekli\/\" \/>\n<meta property=\"og:locale\" content=\"lv_LV\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Rails and Other Means of Transport\" \/>\n<meta property=\"og:description\" content=\"Rails is a Rack-compatible framework focused on quick application development. Unfortunately, the &quot;everything out of the box&quot; approach and blind Rails-way behavior often cause the application code to lose quality, both in terms of its reception (readability) and operation.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/thecodest.co\/lv\/emuars\/sliedes-un-citi-transporta-lidzekli\/\" \/>\n<meta property=\"og:site_name\" content=\"The Codest\" \/>\n<meta property=\"article:published_time\" content=\"2020-04-24T08:53:31+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-24T11:27:38+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/rails.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"960\" \/>\n\t<meta property=\"og:image:height\" content=\"540\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"thecodest\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"thecodest\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 min\u016btes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/rails-and-other-means-of-transport\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/rails-and-other-means-of-transport\\\/\"},\"author\":{\"name\":\"thecodest\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#\\\/schema\\\/person\\\/7e3fe41dfa4f4e41a7baad4c6e0d4f76\"},\"headline\":\"Rails and Other Means of Transport\",\"datePublished\":\"2020-04-24T08:53:31+00:00\",\"dateModified\":\"2026-04-24T11:27:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/rails-and-other-means-of-transport\\\/\"},\"wordCount\":577,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/rails-and-other-means-of-transport\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/05\\\/rails.jpg\",\"articleSection\":[\"Software Development\"],\"inLanguage\":\"lv-LV\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/thecodest.co\\\/blog\\\/rails-and-other-means-of-transport\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/rails-and-other-means-of-transport\\\/\",\"url\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/rails-and-other-means-of-transport\\\/\",\"name\":\"Rails and Other Means of Transport - The Codest\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/rails-and-other-means-of-transport\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/rails-and-other-means-of-transport\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/05\\\/rails.jpg\",\"datePublished\":\"2020-04-24T08:53:31+00:00\",\"dateModified\":\"2026-04-24T11:27:38+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/rails-and-other-means-of-transport\\\/#breadcrumb\"},\"inLanguage\":\"lv-LV\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/thecodest.co\\\/blog\\\/rails-and-other-means-of-transport\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"lv-LV\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/rails-and-other-means-of-transport\\\/#primaryimage\",\"url\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/05\\\/rails.jpg\",\"contentUrl\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/05\\\/rails.jpg\",\"width\":960,\"height\":540},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/rails-and-other-means-of-transport\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/thecodest.co\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Rails and Other Means of Transport\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#website\",\"url\":\"https:\\\/\\\/thecodest.co\\\/\",\"name\":\"The Codest\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/thecodest.co\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"lv-LV\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#organization\",\"name\":\"The Codest\",\"url\":\"https:\\\/\\\/thecodest.co\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"lv-LV\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/03\\\/thecodest-logo.svg\",\"contentUrl\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/03\\\/thecodest-logo.svg\",\"width\":144,\"height\":36,\"caption\":\"The Codest\"},\"image\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/pl.linkedin.com\\\/company\\\/codest\",\"https:\\\/\\\/clutch.co\\\/profile\\\/codest\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#\\\/schema\\\/person\\\/7e3fe41dfa4f4e41a7baad4c6e0d4f76\",\"name\":\"thecodest\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"lv-LV\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g\",\"caption\":\"thecodest\"},\"url\":\"https:\\\/\\\/thecodest.co\\\/lv\\\/author\\\/thecodest\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Sliedes un citi transportl\u012bdzek\u013ci - The Codest","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:\/\/thecodest.co\/lv\/emuars\/sliedes-un-citi-transporta-lidzekli\/","og_locale":"lv_LV","og_type":"article","og_title":"Rails and Other Means of Transport","og_description":"Rails is a Rack-compatible framework focused on quick application development. Unfortunately, the \"everything out of the box\" approach and blind Rails-way behavior often cause the application code to lose quality, both in terms of its reception (readability) and operation.","og_url":"https:\/\/thecodest.co\/lv\/emuars\/sliedes-un-citi-transporta-lidzekli\/","og_site_name":"The Codest","article_published_time":"2020-04-24T08:53:31+00:00","article_modified_time":"2026-04-24T11:27:38+00:00","og_image":[{"width":960,"height":540,"url":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/rails.jpg","type":"image\/jpeg"}],"author":"thecodest","twitter_card":"summary_large_image","twitter_misc":{"Written by":"thecodest","Est. reading time":"3 min\u016btes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/thecodest.co\/blog\/rails-and-other-means-of-transport\/#article","isPartOf":{"@id":"https:\/\/thecodest.co\/blog\/rails-and-other-means-of-transport\/"},"author":{"name":"thecodest","@id":"https:\/\/thecodest.co\/#\/schema\/person\/7e3fe41dfa4f4e41a7baad4c6e0d4f76"},"headline":"Rails and Other Means of Transport","datePublished":"2020-04-24T08:53:31+00:00","dateModified":"2026-04-24T11:27:38+00:00","mainEntityOfPage":{"@id":"https:\/\/thecodest.co\/blog\/rails-and-other-means-of-transport\/"},"wordCount":577,"commentCount":0,"publisher":{"@id":"https:\/\/thecodest.co\/#organization"},"image":{"@id":"https:\/\/thecodest.co\/blog\/rails-and-other-means-of-transport\/#primaryimage"},"thumbnailUrl":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/rails.jpg","articleSection":["Software Development"],"inLanguage":"lv-LV","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/thecodest.co\/blog\/rails-and-other-means-of-transport\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/thecodest.co\/blog\/rails-and-other-means-of-transport\/","url":"https:\/\/thecodest.co\/blog\/rails-and-other-means-of-transport\/","name":"Sliedes un citi transportl\u012bdzek\u013ci - The Codest","isPartOf":{"@id":"https:\/\/thecodest.co\/#website"},"primaryImageOfPage":{"@id":"https:\/\/thecodest.co\/blog\/rails-and-other-means-of-transport\/#primaryimage"},"image":{"@id":"https:\/\/thecodest.co\/blog\/rails-and-other-means-of-transport\/#primaryimage"},"thumbnailUrl":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/rails.jpg","datePublished":"2020-04-24T08:53:31+00:00","dateModified":"2026-04-24T11:27:38+00:00","breadcrumb":{"@id":"https:\/\/thecodest.co\/blog\/rails-and-other-means-of-transport\/#breadcrumb"},"inLanguage":"lv-LV","potentialAction":[{"@type":"ReadAction","target":["https:\/\/thecodest.co\/blog\/rails-and-other-means-of-transport\/"]}]},{"@type":"ImageObject","inLanguage":"lv-LV","@id":"https:\/\/thecodest.co\/blog\/rails-and-other-means-of-transport\/#primaryimage","url":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/rails.jpg","contentUrl":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/rails.jpg","width":960,"height":540},{"@type":"BreadcrumbList","@id":"https:\/\/thecodest.co\/blog\/rails-and-other-means-of-transport\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/thecodest.co\/"},{"@type":"ListItem","position":2,"name":"Rails and Other Means of Transport"}]},{"@type":"WebSite","@id":"https:\/\/thecodest.co\/#website","url":"https:\/\/thecodest.co\/","name":"The Codest","description":"","publisher":{"@id":"https:\/\/thecodest.co\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/thecodest.co\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"lv-LV"},{"@type":"Organization","@id":"https:\/\/thecodest.co\/#organization","name":"The Codest","url":"https:\/\/thecodest.co\/","logo":{"@type":"ImageObject","inLanguage":"lv-LV","@id":"https:\/\/thecodest.co\/#\/schema\/logo\/image\/","url":"https:\/\/thecodest.co\/app\/uploads\/2024\/03\/thecodest-logo.svg","contentUrl":"https:\/\/thecodest.co\/app\/uploads\/2024\/03\/thecodest-logo.svg","width":144,"height":36,"caption":"The Codest"},"image":{"@id":"https:\/\/thecodest.co\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/pl.linkedin.com\/company\/codest","https:\/\/clutch.co\/profile\/codest"]},{"@type":"Person","@id":"https:\/\/thecodest.co\/#\/schema\/person\/7e3fe41dfa4f4e41a7baad4c6e0d4f76","name":"thecodest","image":{"@type":"ImageObject","inLanguage":"lv-LV","@id":"https:\/\/secure.gravatar.com\/avatar\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g","caption":"thecodest"},"url":"https:\/\/thecodest.co\/lv\/author\/thecodest\/"}]}},"_links":{"self":[{"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/posts\/3530","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/comments?post=3530"}],"version-history":[{"count":3,"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/posts\/3530\/revisions"}],"predecessor-version":[{"id":7965,"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/posts\/3530\/revisions\/7965"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/media\/3531"}],"wp:attachment":[{"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/media?parent=3530"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/categories?post=3530"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/tags?post=3530"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}