as says, i'm newbie in ruby on rails) , have following issue:
i have search form https://www.dropbox.com/s/hmr85xh3ra28nsf/screen%20shot%202015-07-10%20at%2023.19.07.png?dl=0
and have ability add new msisdn if doesnt exist. make fake insert , want add conditional link active_scaffold grid instead of exist ones:
config.action_links.add :submit_create, :label => "create blacklisted user", :type => :record, :confirm => "are sure?", :inline => true, :method => :get here controller
>class ccare::userstatuscontroller < applicationcontroller >before_filter :filter_search > verify :method => :post, > :only => :stop, > :redirect_to => { :action => :index } > > active_scaffold :users |config| > config.label = "user status" > config.list.columns = [:msisdn, :user_agent, :network ] > config.actions = [:search, :field_search, :list, :nested] > config.actions.swap :search, :field_search > config.field_search.columns = [:msisdn] > config.columns[:id].label = "id" > config.columns[:id].search_sql = "users.id = ?" > config.columns[:id].search_ui = :text > > config.columns[:msisdn].search_sql = "users.msisdn = ?" > config.columns[:msisdn].search_ui = :text > > config.columns[:network].sort = {:sql => "network.network" } > config.columns[:network].search_sql = "network.network" > config.columns[:network].search_ui = :select > config.columns[:network].actions_for_association_links = [:show] > config.columns[:user_agent].label = "device" > config.nested.add_link("subscriptions", [:user_service_list]) > config.nested.add_link("contact history", [:user_contact]) > config.action_links.add "show_stop_all", :label => "stop all", :type > => :record, :crud_type => :create, :inline => true, :position => :after > config.list.always_show_search = true > end > def update_table > if params[:search].nil? , params[:nested].nil? > render :partial => "shared/empty_list", :layout => false > else > if not params[:search][:id].nil? , not params[:search][:id].empty? >and not params[:search][:id] =~ /^[0-9]+$/ > flash[:error] = "id not number" > render :partial => "shared/empty_list", :layout => false > return > end > if (is_msisdn_exist) > super > else > user = user.new > user.msisdn = params[:search][:msisdn] > user.user_list_id = 1 > user.save > super > end > end > end i tried put method is_msisdn_exist
active_scaffold :users |config| .... end but returned error: method not found. how can implement conditional link?
i have solved problem in following way:
i add parameter link - :html_options = {}
config.action_links.add :submit_create, :label => "create blacklisted user", :type => :record, :confirm => "are sure?", :inline => true, :method => :get, :html_options = {}
and manipulate parameter in controller:
active_scaffold_config.action_links.each |link|
link.html_options={:hidden=>true} if ['create blacklisted user'].include? link.label
end
Comments
Post a Comment