আমি কীভাবে কিছু এইচটিএমএল রুবি কোডের আশেপাশে লিঙ্ক_ মোড়ক করব?


116

আমি কীভাবে ভিউ কোডের চারপাশে একটি লিঙ্কটি গুটিয়ে রাখতে পারি? আমি একা link_toপদ্ধতিতে রুবি কোড সহ একাধিক লাইন কীভাবে পাস করব তা আমি বুঝতে পারি না । আমি যে ফলাফলটির সন্ধান করছি তা হ'ল আপনি কলামটি ক্লিক করেন এবং শো পৃষ্ঠাটি পান:

<div class="subcolumns">
  <div class="c25l">
        <div class="subcl">
        <%= image_tag album.photo.media.url(:thumb), :class => "image" rescue nil  %>
        </div>
    </div>
  <div class="c75r">
        <div class="subcr">
            <p><%= album.created_at %></p>
            <%= link_to h(album.title), album %>
            <p><%= album.created_at %></p>
            <p><%= album.photo_count %></p>
        </div>
  </div>
</div>

উত্তর:


270

link_to কোডের একটি ব্লক নেয় (> = রেল ২.২) যা এটি ট্যাগের মূল অংশ হিসাবে ব্যবহার করবে।

তুমি যা কর

<%= link_to(@album) do %>
  html-code-here
<% end %>

তবে আমি নিশ্চিত যে divকোনও aট্যাগের অভ্যন্তরে বাসা বাঁধতে বৈধ এইচটিএমএল নয়।

সম্পাদনা: =আমিন আরিয়ানার নীচে মন্তব্য অনুসারে যোগ করা চরিত্র।


17
এই মন্তব্যটি কেবলমাত্র একটি রেফারেন্স: <a> <div> </div> </a> এইচটিএমএল 5 তে বৈধ, তবে পূর্ববর্তী এইচটিএমএল স্প্যাসগুলিতে নয়। অনুরূপ প্রশ্নের জন্য stackoverflow.com/questions/796087/make-a-div-into-a-link দেখুন ।
চকনসেলসন

উপরের সিনট্যাক্সটি ব্যবহার করে রেলগুলি ২.৩.৮ এখনও "সিনট্যাক্স ত্রুটি, অপ্রত্যাশিত") '"পাচ্ছে।
daedelus_j

আপনার যদি আরও জটিল পথ থাকে তবে আপনি কেবলমাত্র প্যারামিটারগুলিতে যুক্ত করতে পারেন, প্রাথমিক সামগ্রীটি অনুপস্থিত, উদাহরণস্বরূপ <% = লিঙ্ক_ কোনও_পথ, পদ্ধতি::%%>
ওব্রোমিওস

13

এছাড়াও, এটি কারও কারও জন্য একটি সমস্যা হতে পারে:

আপনি <%=যদি এর পরিবর্তে কোডের সাথে একটি সাধারণ লিঙ্কটি করছেন তবে লিখতে ভুলবেন না<%

যেমন

<%= link_to 'some_controller_name/some_get_request' do %>
  Hello World
<% end  %>

আমি মনে করি এটি
223

8

পুরানো রেল সংস্করণগুলির জন্য, আপনি ব্যবহার করতে পারেন

<% content_tag(:a, :href => foo_path) do %>
  <span>Foo</span>
<% end %>


-2

এই জবাবটি সম্পর্কে আমি কিছুটা পিছিয়ে পড়েছি আমি জানি - তবে আমাকে আজ এখানেই পরিচালিত করা হয়েছিল, এবং কোনও ভাল উত্তর খুঁজে পেল না। নিম্নলিখিত কাজ করা উচিত:

<% link_to raw(html here), @album %>

5
এটি ভিতরে ব্যবহার করা উচিত নয় কারণ সমস্ত অভ্যন্তরীণ এইচটিএমএল rawXSS প্রবণ।
অরিলিল

অগত্যা নয়, এটি হতে পারে যে আপনার নিজের অ্যাপ্লিকেশনের মধ্যেই কোথাও এইচটিএমএল তৈরি হচ্ছে যা আপনি জানেন নিরাপদ। তবুও, 99% পরিস্থিতিতে এটি এড়ানো ভাল। (উপরের কোডটি যেভাবেই হোক ভুল হয়েছে তা উল্লেখ না করে, এটি দিয়ে শুরু করা উচিত <%=, নয় <%।)
GMA

সেরা উপায় নয়। এখানে এইচটিএমএল আপনার নিজস্ব অ্যাপ্লিকেশন দ্বারা উত্পাদিত করতে হবে এবং সুরক্ষিত হতে হবে তা নিশ্চিত করা উচিত। উপরের উত্তরের আরও ভাল উপায় আছে।
জোশুয়া ডান্স
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.