2014-01-10 3 views
2

저는 Rails에 처음 접했습니다.레일에 양식 데이터를 표시하는 가장 좋은 방법은 무엇입니까?

저는 폼 데이터의 출력을 표시하는 가장 일반적인 '레일과 같은'방법을 찾고 있습니다. Simple form과 Formtastic은 간결한 코드를 작성하고 입력 필드를 사용자 친화적 인 방식으로 표시하는 데 좋은 옵션입니다. 그러나, 나는 약간 다른 것을 찾고 있는데,이 형식의 데이터를 출력으로 표시하고 싶습니다. 비슷하고 간결한 방식으로이 작업을 수행하려고합니다. 나는 지난 몇 일 동안 내가 스택 오버플로 (Stack Overflow)를 물어야한다고 생각했기 때문에 주변에서 검색 한 것을 찾을 수 없었다.

평소에 무엇을합니까?

  • 간결한 코드를 작성하고 출력 데이터를 표시 할 수 있도록 사용자 정의 도우미를 작성 하시겠습니까?
  • Simpleform/Formtastic을 사용하고 입력란을 사용 중지하고 CSS를 으로 수정하여 원하는 방식으로 보이게하십시오.
  • 이 작업을 수행하는 일반적인 보석이 있습니까? 아니면 내가 생각하지 못한 다른 방법 일 수도 있습니다.
  • 최초 응답에 감사드립니다. 나는 나의 질문을 분명히해야한다고 생각했다. 대답이 그다지 큰 타격을주지 않기 때문에. 컨트롤러에 대한 표시 방법과 뷰 템플릿이 이미 있습니다. 현재 form_for를 사용하여 약 12 ​​개의 필드에 대해 개별적으로 각 필드를 양식에 표시하고 있습니다. 사용자에 대한 데이터를 표시를 편집 할 수 없습니다하지만 단지 그것을 읽는 방법을 form_for하는 동등한 자신이다 나는, 어쩌면 더 좋은 질문이 될 것 같아요

    <%= form_for(@event) do |f| %> 
        <div class="row-fluid"> 
         <div class="span6"> 
         <%= render 'shared/error_messages' %> 
    
         <%= f.label :title %> 
         <%= f.text_field :title, :disabled => true %> 
    
         <%= f.label :start_date %> 
         <%= f.date_field :start_date, :disabled => true %> 
         </div> 
        </div> 
        <% end %> 
    

    예는 아래 니펫을 참조하십시오? 내가 찾지 못한 것은 표준 방법 일 것입니다.

    +0

    '표시 형식 데이터'란 컨트롤러의 표시보기를 의미합니까? 이것은 양식과 별개이며 다르게 표시되어야합니다. – sevenseacat

    +0

    가장 좋은 방법은 하나도 없습니다. 선택 사항이지만 "show.html.erb"보기 파일에서 수행하십시오. (나는 HAML을 사용하는 것을 좋아한다) – gdelfino

    답변

    0

    양식을 작성하는 가장 쉬운 방법은 rails g scaffold Example name:string을 사용하는 것입니다. 이는 이름 속성이 문자열 인 예제라는 모델에 대해 모델, 뷰, 컨트롤러 및 필요한 데이터베이스 마이그레이션을 생성합니다.

    그런 다음 html과 css를 사용하여 원하는 스타일로 스타일을 지정합니다.

    레일 가이드 here에는 유용한 정보가 많이 있습니다.이 질문은 다소 모호하지만

    0

    ,이 기능이 레일스가 내장되어 어떤 정확히


    데이터을 (데이터/표시 다른 곳을 조작 할 수 & 제출)입니다 감사합니다

    MVC 응용 프로그램의 데이터는 하나의 매우 중요한 요소 인 - 데이터베이스

    당신이 양식을 통해 데이터를 제출하는 경우

    , 당신의 목표는 데이터베이스에 저장하고, 따라서 다른 뷰/컨트롤러 방법

    에 표시하는 것입니다, 당신의 대답에 무딘 질문 MVC processes을 준수하는 것입니다,

    enter image description here


    보기

    : 당신이 나중에 호출 할 수있는 중앙 저장소 (데이터베이스 또는 다른)에 데이터를 저장

    데이터 저장소에 데이터를 얻으려면, 먼저

    MVC의 view 부분은 당신이 당신의 UI를 표시 할 수있는 곳입니다, 따라서 당신이 양식을 넣을 수있는 곳입니다 제출해야합니다. 이이 here를 설계하는 방법에 대한 전체 튜토리얼이지만, 시연 '을 위해, 여기 당신이 당신의 양식을 사용하십시오 방법의 예 :

    #app/views/posts/new.html.erb 
    <%= form_for @post do |f| %> 
        <%= f.text_field :title %> 
        <%= f.text_field :body %> 
        <%= f.submit %> 
    <% end %> 
    

    컨트롤러

    데이터는 귀하의 견해에 대한 입력은 저장시 귀하의 컨트롤러로 전송됩니다

    데이터는 params[] 해시로 Rails에서 읽으려면 HTML POST 방법을 통해 전송됩니다.이 해시 당신의 HTML 양식에서 전송 된 모든 항목을 포함하고, 다음과 같이 사용할 수 있습니다

    #app/controllers/posts_controller.rb 
    def new 
        @post = Post.new 
    end 
    
    def create 
        @post = Post.new(post_params) 
        @post.save 
    end 
    
    private 
    def post_params 
        params.require(:post).permit(:title, :body) 
    end 
    

    모델

    는 새로 만든 Post 객체에 .save 방법은 기본적으로 모델을 알려줍니다 데이터를 데이터베이스 (또는 다른 데이터 저장소)에 저장 한 다음 나중에 가져올 수 있습니다 (.find 메서드 또는 유사 사용)

    #app/models/post.rb 
    Class Post < ActiveRecord::Base 
        #stuff here 
    end 
    

    은 데이터 저장소 (즉, DB)

    모델의 일종으로 데이터를 저장하기 위해 그들은 단순히 (당신이 경우 API를) 인터페이스를 제공, 당신의 모델이되지 저장 데이터을주의하는 것이 중요합니다 당신이 구조를 허용하기 때문에 매우 중요합니다. & 강력한 응용 프로그램을 구축 할 수있는 능력을 창출하여 데이터를 연관 시키십시오.