作爲我的Rails 3應用程序的一部分,我希望用戶能夠點擊其他個人資料/頁面上的鏈接並添加鏈接的字符串值到屬於該用戶個人資料的數組。Rails 3數組 - 添加具有類別的項目,然後列出項目類別
具體來說,我期望做的是爲每個配置文件填充:todos
的列表,具體取決於他們點擊哪個todo
。這個想法是,每個todo
將屬於兩類之一:內部和外部。因此,點擊鏈接會將todo
的值推送到內部或外部。然後,用戶的個人資料將在內部和外部顯示:todos
的列表,並計算該用戶個人資料的總計todos
。
由於我是編程的初學者,因此我在這裏得到了一些關於設置這方面的幫助;但是我需要一些幫助來完成它。我似乎無法連接所有的點。我建立了一個連接模型,但無法添加待辦事項的字符串值,然後在配置文件中列出/計算它。這裏是我的代碼:
profile.rb型號:
class Profile < ActiveRecord::Base
belongs_to :user
accepts_nested_attributes_for :user
has_many :profile_todos
has_many :todos, :through => :profile_todos
def add_todo_inside_item(item)
self.profile_todos.build :category => 'inside'
end
def add_todo_outside_item(item)
self.profile_todos.build :category => 'outside'
end
end
todo.rb型號:
class Todo < ActiveRecord::Base
belongs_to :profile
end
profile_todo.rb型號:
class ProfileTodo < ActiveRecord::Base
belongs_to :profile
belongs_to :todo
end
_create_todos.rb遷移:
class CreateTodos < ActiveRecord::Migration
def self.up
create_table :todos do |t|
t.string :name
t.timestamps
end
end
_create_profile_todos.rb遷移:
class CreateProfileTodos < ActiveRecord::Migration
def self.up
create_table :profile_todos do |t|
t.string :category
t.integer :profile_id
t.timestamps
end
end
清單用戶的配置文件的待辦事項:
<div id="todos">
<p><%= @profile.first_name %> has <%= pluralize(@profile.profile_todos.count, 'goal') %>.</p>
<div id="todo-list">
<div class="todos_inside">
<p><%= @profile.profile_todos(:category => 'inside' %>.</p>
</div>
<div class="todos_outside">
<p><%= @profile.profile_todos(:category => 'outside' %>.</p>
</div>
</div>
</div>
對方法add_item @親file.todos:
<li><%= link_to "#", :class => 'button white' do %><%= @user.profile.stringtoadd %><% end %></li>
謝謝。你能提供一個代碼示例,它可以與我在更新中包含的'link_to'一起使用嗎? – tvalent2