gpt4 book ai didi

ruby-on-rails - Rails + MongoMapper + EmbeddedDocument 表单帮助

转载 作者:行者123 更新时间:2023-12-02 02:28:27 24 4
gpt4 key购买 nike

我正在开发一个非常简单的 Web 应用程序(著名的最后一句话),并且正在使用 Rails 2.3.5 + MongoMapper 0.7.2 并使用嵌入式文档。我有两个问题想请教:

首先,是否有使用 Rails + MongoMapper + EmbeddedDocument 的示例应用程序?最好在 GitHub 或其他类似网站上,这样我就可以查看源代码并了解我应该去哪里?如果没有...

...完成此任务的最佳方法是什么?我将如何创建一个表单来处理嵌入文档。

我试图做的是向用户添加地址。如果你愿意的话,我可以把这两个模型扔掉。

感谢您的帮助!

最佳答案

这是我在我的一个应用程序中采用的基本方法。问题有很多答案 - 问题是文档,答案是嵌入文档。您可以使用“添加答案”链接生成另一个答案字段,并使用“删除”链接删除一个答案字段。

_form.html.erb:

<% form_for @problem do |f| %>
<%= f.error_messages %>

<p>
<%= f.label :content %><br />
<%= f.text_area :content, :size => '50x7' %>
</p>

...etc...

<%= add_answer_link "(add answer)" %>
<div id="answers">
<%= render :partial => 'answer', :collection => @problem.answers %>
</div>

<p><%= f.submit "Submit" %></p>
<% end %>

_answer.html.erb:

<div class="answer">
<% fields_for 'problem[answers]', answer, :index => nil do |f| -%>
<%= f.label :content, "Answer #{answer.id}:" %>
<%= f.text_field :content, :size => 50 %>
<%= link_to_function "(remove)", "$(this).up('.answer').remove()" %>
<% end -%>
</div>

problems_helper.rb

module ProblemsHelper
def add_answer_link(name)
link_to_function name do |page|
page.insert_html :bottom, "answers", :partial => 'answer', :object => Answer.new
end
end
end

我删除了一些实现的小部分,但这应该可以工作。

关于ruby-on-rails - Rails + MongoMapper + EmbeddedDocument 表单帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2526004/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com