我有一個Rails應用程序,它在我的應用程序中創建新案例時使用FreeagentCentral API在FreeagentCentral中創建新項目。Rails和FreeagentCentral API用法
一旦情況下被創建,我鏈接到使用下面的鏈接代碼FreeagentCentral創建項目:
<%= link_to "#{image_tag('/images/icons/freeagent.png')} Freeagent Project", "#{Freeagent::Base.site}#{Freeagent::Project.element_path(@kase.freeagent_id).gsub!(/.xml/,'')}" if @kase.freeagent_id %>
我想什麼做的,是表明了在已創建的發票清單項目下的FreeagentCentral - 在我的應用程序中。例如,如果我在我的應用程序中創建了一個案例,那麼它將在FreeagentCentral中創建爲一個項目。如果我然後在該項目的FreeagentCentral中創建了3份發票,則3份發票將列在我的應用程序的案例展示視圖中。
我使用由亞倫·羅素做出了FreeagentCentral API寶石:
http://github.com/aaronrussell/freeagent_api
我已經做了我的理解是必要的,這是添加了以下到下的顯示部分我kases_controller.rb
文件:
def show
@kase = Kase.find(params[:id])
@invoice = Invoice.find(params[:freeagent_id])
我不知道,如果這是正確的,或者如果它其實應該是:
def show
@kase = Kase.find(params[:id])
@kase = Invoice.find(params[:freeagent_id])
此外,一旦以上是正確的 - 如何列出在我的show view中找到的項目中的任何發票?
<% for invoice in @kases %>
<li><%= link_to ??, kase %></li>
<% end %>
如果有幫助,這是我的代碼從kase.rb
使用的情況下發送到FreeagentCentral作爲一個項目:
# FreeAgent API Project Create
# Required attribues
# :contact_id
# :name
# :billing_basis # must be 1, 7, 7.5, or 8
# :budget_units # must be Hours, Days, or Monetary
# :status # must be Active or Completed
def create_freeagent_project(current_user)
contact = Freeagent::Contact.find_by_name(company.companyname)
p = Freeagent::Project.create(
:contact_id => contact.id,
:name => "#{jobno} - #{highrisesubject}",
:billing_basis => 1,
:budget_units => 'Hours',
:status => 'Active'
)
user = Freeagent::User.find_by_email(current_user.email)
Freeagent::Timeslip.create(
:project_id => p.id,
:user_id => user.id,
:hours => 1,
:new_task => 'Setup',
:dated_on => Time.now
)
Freeagent::Task.create(:project_id => p.id, :name => 'Telephone Discussions')
Freeagent::Task.create(:project_id => p.id, :name => 'Investigation')
Freeagent::Task.create(:project_id => p.id, :name => 'Travel')
Freeagent::Task.create(:project_id => p.id, :name => 'Survey')
Freeagent::Task.create(:project_id => p.id, :name => 'Correspondence')
Freeagent::Task.create(:project_id => p.id, :name => 'Report')
Freeagent::Task.create(:project_id => p.id, :name => 'Claim Assessment')
self.freeagent_id = p.id
self.save
end
任何幫助,任何人都可以闡明這會受到歡迎!
感謝,
丹尼