Ruby on Rails - как представить как xml модели с has_many ассоциациями

В конкретном случае в Вашем примере я использовал бы алгоритмы STL для выполнения этого.

#include <numeric> 

sum = std::accumulate( polygon.begin(), polygon.end(), 0 );

Для более общего, но все еще довольно простого случая, я пошел бы с:

#include <boost/lambda/lambda.hpp>
#include <boost/lambda/bind.hpp>

using namespace boost::lambda;
std::for_each( polygon.begin(), polygon.end(), sum += _1 );
5
задан Simone Carletti 25 July 2009 в 09:07
поделиться

4 ответа

Seems, rails can handle multiple levels of nesting. This is the code that I ended up with.

<%= @ltest.to_xml(:include => {
        :test_group => { :include => [ :user ]},
        :sub_tests => { :include => {
            :attachments => {},
            :errors => {},
            :test_bugs => {},
        } },
        :attachments => {},
        :errors => {},
        :test_bugs => {},
        :test_nodes => { :include => {
            :node => { :include => [ :networks ]},
            :attachments => {},
        }}
    } ) %>
5
ответ дан 18 December 2019 в 06:51
поделиться

Выполнение этого в представлении show.xml.erb сработало.

<%= @ltest.to_xml :include => [ :sub_tests ]%>

Однако объекты, вложенные внутри sub_tests (test_logs, errors), не учитываются.

1
ответ дан 18 December 2019 в 06:51
поделиться

Вам, вероятно, следует использовать для этого конструктор xml. http: //www.xml. com / pub / a / 2006/01/04 / create-xml-with-ruby-and-builder.html

0
ответ дан 18 December 2019 в 06:51
поделиться

Для этого не нужно использовать builder или erb. Вы можете получить то, что хотите, в контроллере (по крайней мере, я могу в рельсах 2.3.4) вот так:

format.xml  { render :xml => @ltest.to_xml(:include => :sub_tests) }
14
ответ дан 18 December 2019 в 06:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: