2013-03-04 72 views
0

我對Rails很陌生,試圖用Foundation框架來製作應用程序。問題在於模態窗口。在其他html.erb中渲染html.erb(不是部分)

我有一個index.html.erb文件在views/users文件夾中,由腳手架產生。 同樣的文件夾中還有一個new.html.erb文件。

我想在索引頁上的模態窗口中打開../users/new鏈接。

我用例子Reveal (Foundation Documentation),把new.html.erb文件內容:

<div id="myModal" class="reveal-modal"> 
. 
. 
</div> 

此外,添加新用戶鏈接 「href」 屬性。

<%= link_to 'New User', new_user_path, 'data-reveal-id' => 'myModal' %> 

如描述的那樣here

現在我需要在index.html.erb中呈現new.html.erb,因爲我需要在/ body標記之前的此代碼,如Foundation Docs中所述。

我試圖將其渲染爲部分,但它不起作用。

有沒有辦法做到這一點,沒有雙new.html.erb作爲_new.html.erb和插入它作爲部分在index.html.erb

我不認爲,那個RoR與所有的「寫少代碼!」東西,沒有辦法沒有代碼複製。

謝謝!

回答

0

你不能使用新的動作,儘管你可以把你的表單放在一個部分,在新的和你的動作中使用來生成模態表單。

在頁面加載時,您可以使用_form部分。

如果您想要飛行,可以使用ajax生成模型的表單,這可以用於編輯以及新建。

第一步:的link_to 「你的行動路徑」,遠程:真正的,ID: 「ABC」

第二步:你的行動路徑應返回如下格式的HTML渲染字符串

第三步:現在使用jQuery $(「#abc」)的ajax成功用表單替換模型內部內容。

並使用創建操作爲ajax和回發。

代碼是乾的。

讓我知道如果你需要的代碼。

謝謝

+0

謝謝!你的答案中的Ajax部分對我來說還不清楚。 但我已經使用了你的'_form'建議。 所以,我的代碼如下所示: '<%=的link_to '新用戶',new_user_path, '數據顯示-ID'=> '新用戶模式' %>

<%= render 'form' %>
' 此外,它沒」直到我在索引部分的'users_controller.rb'中添加'@user = User.new'。 'def index @users = User.all @user = User.new respond_to do | format | format.html#index.html.erb format.json {render json:@users} end end' – 2013-03-04 20:06:20