{"id":8756,"date":"2016-09-06T12:56:40","date_gmt":"2016-09-06T12:56:40","guid":{"rendered":"https:\/\/dev.railscarma.com\/acts_as_votable\/"},"modified":"2021-06-06T11:46:31","modified_gmt":"2021-06-06T11:46:31","slug":"fungerar_som_rostbar","status":"publish","type":"post","link":"https:\/\/www.railscarma.com\/sv\/blogg\/tekniska-artiklar\/fungerar_som_rostbar\/","title":{"rendered":"Hur anv\u00e4nder man Acts_As_Votable Gem?"},"content":{"rendered":"<div data-elementor-type=\"wp-post\" data-elementor-id=\"8756\" class=\"elementor elementor-8756\" data-elementor-post-type=\"post\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-12639522 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"12639522\" 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-4e907a3a\" data-id=\"4e907a3a\" 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-709e7325 elementor-widget elementor-widget-text-editor\" data-id=\"709e7325\" 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<strong>Fungerar_Som_Votable<\/strong> \u00e4r ruby p\u00e4rla speciellt skriven f\u00f6r Rails\/ActiveRecord-modeller och denna p\u00e4rla g\u00f6r att alla modeller kan r\u00f6stas upp\/ned, gilla\/ogilla, etc. Det g\u00f6r att alla modeller kan r\u00f6stas under godtyckliga omfattningar med denna p\u00e4rla, vi kan r\u00f6sta p\u00e5 vilken modell som helst. r\u00f6ster beh\u00f6ver inte komma fr\u00e5n en anv\u00e4ndare, de kan komma fr\u00e5n vilken modell som helst (som en grupp eller ett team) och det ger en syntax som \u00e4r l\u00e4tt att skriva\/l\u00e4sa.\n\n<strong>Gem Installation<\/strong>\n<blockquote>p\u00e4rla &quot;fungerar_som_votable&quot;<\/blockquote>\nL\u00e4gg till ovanst\u00e5ende rad i Gemfile och k\u00f6r buntinstallation St\u00f6dda ruby- och rails-versioner\n<blockquote>Ruby 1.8.7, 1.9.2, 1.9.3, 2.0.0, 2.1.0 Rails 3.0, 3.1, 3.2, 4.0, 4.1+<\/blockquote>\nDenna p\u00e4rla anv\u00e4nder r\u00f6sttabellen f\u00f6r att spara all r\u00f6stinformation. F\u00f6r att generera r\u00f6stmigrering, k\u00f6r under kommandon\n<blockquote>rails genererar acts_as_votable:migration rake db:migrate<\/blockquote>\nF\u00f6r att betygs\u00e4tta vilken modell som helst, anv\u00e4nd bara &quot;acts_as_votable&quot; i modellen\n\n<strong>Exempel:<\/strong>\n<blockquote>class Article &lt; ActiveRecord::Base acts_as_votable end @article = Article.new(:name =&gt; &#039;min nya artikel&#039;) @article.save @article.liked_by @user @article.votes_for.size # =&gt; 1<\/blockquote>\nNedan finns n\u00e5gra exempel p\u00e5 r\u00f6stning. Alla dessa samtal \u00e4r giltiga och acceptabla\n<blockquote>@article.liked_by @user1 @article.downvote_from @user2 @article.vote_by :voter =&gt; @user3 @article.vote_by :voter =&gt; @user4, :vote =&gt; &#039;gilla&#039; @article.vote_by :voter =&gt; @user5 , :vote =&gt; &#039;ogillar&#039;<\/blockquote>\nSom standard \u00e4r alla r\u00f6ster positiva, s\u00e5 @user3 har lagt en &quot;bra&quot; r\u00f6st p\u00e5 @artikel. @anv\u00e4ndare1, @anv\u00e4ndare3 och @anv\u00e4ndare4 r\u00f6stade alla f\u00f6r @artikel. @anv\u00e4ndare2 och @anv\u00e4ndare5 hade \u00e5 andra sidan r\u00f6stat emot @artikel. Alla ord fungerar f\u00f6r att r\u00f6sta f\u00f6r eller emot inl\u00e4gg som positiv\/negativ, upp\/ner, gilla\/ogilla... etc, booleska flaggor sant och falskt \u00e4r ocks\u00e5 till\u00e4mpliga.\n\n<strong>Exempel med omfattningar:<\/strong>\n\nGenom att anv\u00e4nda denna p\u00e4rla kan vi l\u00e4gga till en omfattning till v\u00e5r r\u00f6st\n<blockquote># positiva\/gilla r\u00f6ster @article.liked_by @user1, :vote_scope =&gt; &#039;rank&#039; @article.vote_by :voter =&gt; @user3, :vote_scope =&gt; &#039;rank&#039; @article.vote_by :voter =&gt; @user5, :vote =&gt; &#039;gilla&#039;, :vote_scope =&gt; &#039;rank&#039; # negativ\/ogillar r\u00f6ster @article.downvote_from @user2, :vote_scope =&gt; &#039;rank&#039; @article.vote_by :voter =&gt; @user2, :vote =&gt; &#039;ogillar&#039; , :vote_scope =&gt; &#039;ranka&#039; # r\u00e4knar ihop dem! @article.find_votes_for(:vote_scope =&gt; &#039;rank&#039;).size # =&gt; 5 @article.get_likes(:vote_scope =&gt; &#039;rank&#039;).size # =&gt; 3 @article.get_upvotes(:vote_scope =&gt; &#039;rank&#039; ).size # =&gt; 3 @article.get_dislikes(:vote_scope =&gt; &#039;rank&#039;).size # =&gt; 2 @article.get_downvotes(:vote_scope =&gt; &#039;rank&#039;).size # =&gt; 2 # r\u00f6stbar modell kan vara r\u00f6stade under olika omf\u00e5ng av samma anv\u00e4ndare @article.vote_by :voter =&gt; @user1, :vote_scope =&gt; &#039;vecka&#039; @article.vote_by :voter =&gt; @user1, :vote_scope =&gt; &#039;month&#039; @article.votes_for.size # =&gt; 2 @article.find_votes_for(:vote_scope =&gt; &#039;vecka&#039;).storlek # =&gt; 1 @article.find_votes_for(:vote_scope =&gt; &#039;m\u00e5nad&#039;).storlek # =&gt; 1<\/blockquote>\nGenom att l\u00e4gga till vikter till v\u00e5ra r\u00f6ster kan vi l\u00e4gga till vikt till v\u00e5r r\u00f6st. Standardv\u00e4rdet \u00e4r 1.\n<blockquote># positiva\/gilla-r\u00f6ster @article.liked_by @user1, :vote_weight =&gt; 1 @article.vote_by :voter =&gt; @user3, :vote_weight =&gt; 2 @article.vote_by :voter =&gt; @user5, :vote =&gt; &#039;gilla &#039;, :vote_scope =&gt; &#039;rank&#039;, :vote_weight =&gt; 3 # negativa\/ogillar r\u00f6ster @article.downvote_from @user2, :vote_scope =&gt; &#039;rank&#039;, :vote_weight =&gt; 1 @article.vote_by :voter =&gt; @user2 , :vote =&gt; &#039;ogillar&#039;, :vote_scope =&gt; &#039;rank&#039;, :vote_weight =&gt; 3 # r\u00e4knar ihop dem! @article.find_votes_for(:vote_scope =&gt; &#039;rank&#039;).sum(:vote_weight) # =&gt; 6 @article.get_likes(:vote_scope =&gt; &#039;rank&#039;).sum(:vote_weight) # =&gt; 6 @article.get_upvotes (:vote_scope =&gt; &#039;rank&#039;).sum(:vote_weight) # =&gt; 6 @article.get_dislikes(:vote_scope =&gt; &#039;rank&#039;).sum(:vote_weight) # =&gt; 4 @article.get_downvotes(:vote_scope = &gt; &#039;rank&#039;).sum(:vote_weight) # =&gt; 4<\/blockquote>\nV\u00e4ljaren vi kan ha v\u00e5ra v\u00e4ljare agerar_som_v\u00e4ljare f\u00f6r att tillhandah\u00e5lla viss reservfunktionalitet.\n\n<strong>Till exempel<\/strong>\n<blockquote>class User &lt; ActiveRecord::Base acts_as_voter end @user.likes @article @article.votes.size # =&gt; 1 @article.likes.size # =&gt; 1 @article.dislikes.size # =&gt; 0<\/blockquote>\nF\u00f6r att kontrollera om en v\u00e4ljare har r\u00f6stat p\u00e5 en modell kan vi anv\u00e4nda voted_for?. vi kan kontrollera hur v\u00e4ljaren r\u00f6stat genom att anv\u00e4nda r\u00f6stade_som_n\u00e4r_r\u00f6stade_p\u00e5, vi kan ocks\u00e5 kontrollera om v\u00e4ljaren har r\u00f6stat upp eller ner. Alias f\u00f6r metoder r\u00f6stade_upp_p\u00e5? \u00e4r uppr\u00f6stad? , gillade? och r\u00f6stade_ned_p\u00e5? \u00e4r nedr\u00f6stade_f\u00f6r?, ogillas? Vi kan ocks\u00e5 f\u00e5 en lista \u00f6ver alla objekt som en anv\u00e4ndare har r\u00f6stat p\u00e5. Detta returnerar de faktiska objekten ist\u00e4llet f\u00f6r instanser av Vote-modellen. Alla f\u00f6rem\u00e5l \u00e4r ivrigt laddade\n\n<strong>Registrerade r\u00f6ster:<\/strong>\n\nV\u00e4ljare kan bara r\u00f6sta en g\u00e5ng per modell. I det h\u00e4r exemplet r\u00e4knas inte den andra r\u00f6sten eftersom @anv\u00e4ndare redan har r\u00f6stat p\u00e5 @post.\n<blockquote>@user.likes @post @user.likes @post @post.votes # =&gt; 1 @post.likes # =&gt; 1<\/blockquote>\nF\u00f6r att kontrollera om en r\u00f6st har r\u00e4knats eller registrerats, anv\u00e4nd vote_registered? p\u00e5 v\u00e5r modell efter r\u00f6stning. Till exempel:\n<blockquote>@product.liked_by @user @product.vote_registered? # =&gt; sant @product.liked_by =&gt; @anv\u00e4ndare @product.vote_registered? # =&gt; falskt, eftersom @anv\u00e4ndare redan har r\u00f6stat p\u00e5 detta s\u00e4tt @product.disliked_by @user @product.vote_registered? # =&gt; sant, eftersom anv\u00e4ndaren \u00e4ndrade sin r\u00f6st<\/blockquote>\nF\u00f6r att kontrollera om en r\u00f6st har registrerats eller r\u00e4knats, anv\u00e4nd vote_registered? p\u00e5 v\u00e5r modell efter r\u00f6stning. F\u00f6r att till\u00e5ta dubbletter av inl\u00e4gg av samma v\u00e4ljare, anv\u00e4nd alternativet dubblett. Observera ocks\u00e5 att detta kommer att begr\u00e4nsa vissa andra metoder som inte handlade om flera r\u00f6ster, i det h\u00e4r fallet kommer den sista r\u00f6sten att \u00f6verv\u00e4gas.\n<blockquote>@post.vote_by voter: @user, :duplicate =&gt; true<\/blockquote>\n<strong>Cachning:<\/strong>\n\nF\u00f6r att snabba upp prestanda kan vi l\u00e4gga till cache-kolumner i v\u00e5r r\u00f6stbara modells tabell. Dessa kolumner kommer automatiskt att uppdateras efter varje omr\u00f6stning.\n\n<a href=\"\/sv\/kontakta-oss\/\">Kontakta oss<\/a> eller kommentera nedan f\u00f6r att veta mer om oss.\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-37c9d121 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"37c9d121\" 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-27649f3a\" data-id=\"27649f3a\" 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-1602a60 elementor-widget elementor-widget-heading\" data-id=\"1602a60\" 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\">Prenumerera f\u00f6r de senaste uppdateringarna<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4b022491 elementor-widget elementor-widget-shortcode\" data-id=\"4b022491\" 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=\"lastare\"><\/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=\"ef492fa981\">\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=\"E-postadress\">\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=\"namn\">\r\n<\/p>\r\n<p>\r\n    <input type=\"submit\" id=\"invisible\" class=\"sib-default-btn\" value=\"Prenumerera\">\r\n<\/p>\t\t\t\t<\/div>\n\t\t\t<input type=\"hidden\" name=\"trp-form-language\" value=\"sv\"\/><\/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\">relaterade inl\u00e4gg<\/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=\"Kaminari Gem\" href=\"https:\/\/www.railscarma.com\/sv\/blogg\/tekniska-artiklar\/kaminari-parla\/?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=\"kaminari p\u00e4rla\" 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=\"Kaminari Gem\" href=\"https:\/\/www.railscarma.com\/sv\/blogg\/tekniska-artiklar\/kaminari-parla\/?related_post_from=37277\">\r\n        Kaminari Gem  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Varf\u00f6r anst\u00e4lla Ruby on Rails-utvecklare 2026?\" href=\"https:\/\/www.railscarma.com\/sv\/blogg\/ror\/varfor-anlita-utvecklare-av-ruby-on-rails\/?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=\"varf\u00f6r anlita utvecklare av ruby on rails 2022\" 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=\"Varf\u00f6r anst\u00e4lla Ruby on Rails-utvecklare 2026?\" href=\"https:\/\/www.railscarma.com\/sv\/blogg\/ror\/varfor-anlita-utvecklare-av-ruby-on-rails\/?related_post_from=30627\">\r\n        Varf\u00f6r anst\u00e4lla Ruby on Rails-utvecklare 2026?  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Betydelsen av mjukvaruarkitektur vid utveckling av f\u00f6retagsmjukvara\" href=\"https:\/\/www.railscarma.com\/sv\/blogg\/ror\/vikten-av-mjukvaruarkitektur-i-foretagsutveckling-av-programvara\/?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=\"Betydelsen av mjukvaruarkitektur vid utveckling av f\u00f6retagsmjukvara\" 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=\"Betydelsen av mjukvaruarkitektur vid utveckling av f\u00f6retagsmjukvara\" href=\"https:\/\/www.railscarma.com\/sv\/blogg\/ror\/vikten-av-mjukvaruarkitektur-i-foretagsutveckling-av-programvara\/?related_post_from=36250\">\r\n        Betydelsen av mjukvaruarkitektur vid utveckling av f\u00f6retagsmjukvara  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Ruby IDE: De b\u00e4sta IDE:erna f\u00f6r Ruby on Rails Development\" href=\"https:\/\/www.railscarma.com\/sv\/blogg\/ror\/ruby-ide-de-basta-ideerna-for-ruby-on-rails-utveckling\/?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=\"B\u00c4STA ID\u00c9ER F\u00d6R UTVECKLING AV RUBY ON RAIL\" 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: De b\u00e4sta IDE:erna f\u00f6r Ruby on Rails Development\" href=\"https:\/\/www.railscarma.com\/sv\/blogg\/ror\/ruby-ide-de-basta-ideerna-for-ruby-on-rails-utveckling\/?related_post_from=36125\">\r\n        Ruby IDE: De b\u00e4sta IDE:erna f\u00f6r Ruby on Rails Development  <\/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>Acts_As_Votable \u00e4r ruby gem specifikt skriven f\u00f6r Rails \/ ActiveRecord-modeller och denna gem g\u00f6r att alla modeller kan r\u00f6stas p\u00e5 uppvote \/ downvote like \/ dislike, etc. Det g\u00f6r att alla modeller kan r\u00f6stas under godtyckliga omfattningar med hj\u00e4lp av denna p\u00e4rla kan vi r\u00f6sta p\u00e5 vilken modell som helst. r\u00f6ster beh\u00f6ver inte komma fr\u00e5n en anv\u00e4ndare, de kan komma fr\u00e5n vilken modell som helst ...<\/p>\n<p class=\"read-more\"> <a class=\"\" href=\"https:\/\/www.railscarma.com\/sv\/blogg\/how-to-build-a-scalable-saas-platform-using-ruby-on-rails\/\"> <span class=\"screen-reader-text\">Hur man bygger en skalbar SaaS-plattform med Ruby on Rails<\/span> L\u00e4s mer \u00bb<\/a><\/p>","protected":false},"author":1,"featured_media":31872,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[384],"tags":[681,682],"class_list":["post-8756","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technical-articles","tag-acts_as_votable","tag-acts_as_votable-gem"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>What is Acts_as_Votable Ruby Gem ? - RailsCarma<\/title>\n<meta name=\"description\" content=\"Acts_As_Votable is ruby gem specifically written for Rails\/ActiveRecord models &amp; allows any model to be voted on upvote\/downvote like\/dislike\" \/>\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\/sv\/blogg\/tekniska-artiklar\/fungerar_som_rostbar\/\" \/>\n<meta property=\"og:locale\" content=\"sv_SE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What is Acts_as_Votable Ruby Gem ? - RailsCarma\" \/>\n<meta property=\"og:description\" content=\"Acts_As_Votable is ruby gem specifically written for Rails\/ActiveRecord models &amp; allows any model to be voted on upvote\/downvote like\/dislike\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.railscarma.com\/sv\/blogg\/tekniska-artiklar\/fungerar_som_rostbar\/\" \/>\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-09-06T12:56:40+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-06-06T11:46:31+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/09\/Insight-into-act_as_votable-Gem.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=\"Skriven av\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Ber\u00e4knad l\u00e4stid\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minuter\" \/>\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\/acts_as_votable\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21\"},\"headline\":\"How to use Acts_As_Votable Gem?\",\"datePublished\":\"2016-09-06T12:56:40+00:00\",\"dateModified\":\"2021-06-06T11:46:31+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/\"},\"wordCount\":929,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.railscarma.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/09\/Insight-into-act_as_votable-Gem.jpg\",\"keywords\":[\"Acts_As_Votable\",\"Acts_As_Votable Gem\"],\"articleSection\":[\"Technical Articles\"],\"inLanguage\":\"sv-SE\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/\",\"url\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/\",\"name\":\"What is Acts_as_Votable Ruby Gem ? - RailsCarma\",\"isPartOf\":{\"@id\":\"https:\/\/www.railscarma.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/09\/Insight-into-act_as_votable-Gem.jpg\",\"datePublished\":\"2016-09-06T12:56:40+00:00\",\"dateModified\":\"2021-06-06T11:46:31+00:00\",\"description\":\"Acts_As_Votable is ruby gem specifically written for Rails\/ActiveRecord models & allows any model to be voted on upvote\/downvote like\/dislike\",\"breadcrumb\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/#breadcrumb\"},\"inLanguage\":\"sv-SE\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"sv-SE\",\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/#primaryimage\",\"url\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/09\/Insight-into-act_as_votable-Gem.jpg\",\"contentUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/09\/Insight-into-act_as_votable-Gem.jpg\",\"width\":800,\"height\":300},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.railscarma.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to use Acts_As_Votable Gem?\"}]},{\"@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\":\"sv-SE\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.railscarma.com\/#organization\",\"name\":\"RailsCarma\",\"url\":\"https:\/\/www.railscarma.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"sv-SE\",\"@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\":\"sv-SE\",\"@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":"Vad \u00e4r Acts_as_Votable Ruby Gem? - RailsCarma","description":"Acts_As_Votable \u00e4r en rubinp\u00e4rla speciellt skriven f\u00f6r Rails\/ActiveRecord-modeller och g\u00f6r att alla modeller kan r\u00f6stas p\u00e5 upp-\/nedr\u00f6sta gilla\/ogilla","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\/sv\/blogg\/tekniska-artiklar\/fungerar_som_rostbar\/","og_locale":"sv_SE","og_type":"article","og_title":"What is Acts_as_Votable Ruby Gem ? - RailsCarma","og_description":"Acts_As_Votable is ruby gem specifically written for Rails\/ActiveRecord models & allows any model to be voted on upvote\/downvote like\/dislike","og_url":"https:\/\/www.railscarma.com\/sv\/blogg\/tekniska-artiklar\/fungerar_som_rostbar\/","og_site_name":"RailsCarma - Ruby on Rails Development Company specializing in Offshore Development","article_publisher":"https:\/\/www.facebook.com\/RailsCarma\/","article_published_time":"2016-09-06T12:56:40+00:00","article_modified_time":"2021-06-06T11:46:31+00:00","og_image":[{"width":800,"height":300,"url":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/09\/Insight-into-act_as_votable-Gem.jpg","type":"image\/jpeg"}],"author":"admin","twitter_card":"summary_large_image","twitter_creator":"@railscarma","twitter_site":"@railscarma","twitter_misc":{"Skriven av":"admin","Ber\u00e4knad l\u00e4stid":"5 minuter"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/#article","isPartOf":{"@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/"},"author":{"name":"admin","@id":"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21"},"headline":"How to use Acts_As_Votable Gem?","datePublished":"2016-09-06T12:56:40+00:00","dateModified":"2021-06-06T11:46:31+00:00","mainEntityOfPage":{"@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/"},"wordCount":929,"commentCount":0,"publisher":{"@id":"https:\/\/www.railscarma.com\/#organization"},"image":{"@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/#primaryimage"},"thumbnailUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/09\/Insight-into-act_as_votable-Gem.jpg","keywords":["Acts_As_Votable","Acts_As_Votable Gem"],"articleSection":["Technical Articles"],"inLanguage":"sv-SE","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/","url":"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/","name":"Vad \u00e4r Acts_as_Votable Ruby Gem? - RailsCarma","isPartOf":{"@id":"https:\/\/www.railscarma.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/#primaryimage"},"image":{"@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/#primaryimage"},"thumbnailUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/09\/Insight-into-act_as_votable-Gem.jpg","datePublished":"2016-09-06T12:56:40+00:00","dateModified":"2021-06-06T11:46:31+00:00","description":"Acts_As_Votable \u00e4r en rubinp\u00e4rla speciellt skriven f\u00f6r Rails\/ActiveRecord-modeller och g\u00f6r att alla modeller kan r\u00f6stas p\u00e5 upp-\/nedr\u00f6sta gilla\/ogilla","breadcrumb":{"@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/#breadcrumb"},"inLanguage":"sv-SE","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/"]}]},{"@type":"ImageObject","inLanguage":"sv-SE","@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/#primaryimage","url":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/09\/Insight-into-act_as_votable-Gem.jpg","contentUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2016\/09\/Insight-into-act_as_votable-Gem.jpg","width":800,"height":300},{"@type":"BreadcrumbList","@id":"https:\/\/www.railscarma.com\/blog\/technical-articles\/acts_as_votable\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.railscarma.com\/"},{"@type":"ListItem","position":2,"name":"How to use Acts_As_Votable Gem?"}]},{"@type":"WebSite","@id":"https:\/\/www.railscarma.com\/#website","url":"https:\/\/www.railscarma.com\/","name":"RailsCarma - Ruby on Rails Development Company specialiserat p\u00e5 Offshore Development","description":"RailsCarma \u00e4r ett Ruby on Rails Development Company i Bangalore. Vi \u00e4r specialiserade p\u00e5 Offshore Ruby on Rails Development baserat i USA och Indien. Anst\u00e4ll erfarna Ruby on Rails-utvecklare f\u00f6r den ultimata webbupplevelsen.","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":"sv-SE"},{"@type":"Organization","@id":"https:\/\/www.railscarma.com\/#organization","name":"RailsCarma","url":"https:\/\/www.railscarma.com\/","logo":{"@type":"ImageObject","inLanguage":"sv-SE","@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":"administration","image":{"@type":"ImageObject","inLanguage":"sv-SE","@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\/sv\/wp-json\/wp\/v2\/posts\/8756","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.railscarma.com\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.railscarma.com\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/sv\/wp-json\/wp\/v2\/comments?post=8756"}],"version-history":[{"count":0,"href":"https:\/\/www.railscarma.com\/sv\/wp-json\/wp\/v2\/posts\/8756\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/sv\/wp-json\/wp\/v2\/media\/31872"}],"wp:attachment":[{"href":"https:\/\/www.railscarma.com\/sv\/wp-json\/wp\/v2\/media?parent=8756"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.railscarma.com\/sv\/wp-json\/wp\/v2\/categories?post=8756"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.railscarma.com\/sv\/wp-json\/wp\/v2\/tags?post=8756"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}