Quantcast
Channel: Active questions tagged ruby - Stack Overflow
Viewing all articles
Browse latest Browse all 4619

ajax-datatables-rails how to use view_columns with one class associated twice

$
0
0

I use this gem for datatables in rails and have problem working with one Model associated twice

https://github.com/jbox-web/ajax-datatables-rails

this is my model

class Associate < ActiveRecord::Base    has_many :missions    has_many :coordinator_missions, :class_name => "Mission", :foreign_key  => "coordinator_id"endclass Mission < ActiveRecord::Base  belongs_to :associate  belongs_to :coordinator, :class_name => "Associate"end

Showing data in table works fine, but I cannot search because of Coordinatorthis is my datatable code

class MissionDatatable < AjaxDatatablesRails::Base  def view_columns    @view_columns ||= {       id: { source: "Mission.id", cond: :eq },       fy: {source: "Mission.fy"},       associate_email: {source: "Associate.email"},       associate_id: {source: "Mission.associate_id"},       coordinator_email: { source: "Coordinator.email" },       coordinator_id: { source: "Mission.coordinator_id" },       name: { source: "Mission.name" },       fye_output: { source: "Mission.fye_output" },       status: { source: "Mission.status" },       created_at: { source: "Mission.created_at" },       updated_at: { source: "Mission.updated_at" }    }  end  def data    records.map do |mission|      {        # example:         id: mission.id,         fy: mission.fy,         associate_email: mission.associate.email,         associate_id: mission.associate_id,         coordinator_email: mission.coordinator.email,         coordinator_id: mission.coordinator_id,         name: mission.name,         fye_output: mission.fye_output,         status: mission.status,         created_at: mission.created_at,         updated_at: mission.updated_at        }    end  end  privatedef get_raw_records  Mission.joins(:associate).joins(:coordinator)endend

could you pls help me how to do correct setup for one model associated twice?The error in log is "wrong constant name Coordinator"

edit: added log

> Started GET> "/missions.json?draw=3&columns%5B0%5D%5Bdata%5D=fy&columns%5B0%5D%5Bname%5D=&columns%5B0%5D%5Bsearchable%5D=true&columns%5B0%5D%5Borderable%5D=true&columns%5B0%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B0%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B1%5D%5Bdata%5D=associate_email&columns%5B1%5D%5Bname%5D=&columns%5B1%5D%5Bsearchable%5D=true&columns%5B1%5D%5Borderable%5D=true&columns%5B1%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B1%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B2%5D%5Bdata%5D=guild_name&columns%5B2%5D%5Bname%5D=&columns%5B2%5D%5Bsearchable%5D=true&columns%5B2%5D%5Borderable%5D=true&columns%5B2%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B2%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B3%5D%5Bdata%5D=coordinator_email&columns%5B3%5D%5Bname%5D=&columns%5B3%5D%5Bsearchable%5D=true&columns%5B3%5D%5Borderable%5D=true&columns%5B3%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B3%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B4%5D%5Bdata%5D=name&columns%5B4%5D%5Bname%5D=&columns%5B4%5D%5Bsearchable%5D=true&columns%5B4%5D%5Borderable%5D=true&columns%5B4%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B4%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B5%5D%5Bdata%5D=eighty&columns%5B5%5D%5Bname%5D=&columns%5B5%5D%5Bsearchable%5D=true&columns%5B5%5D%5Borderable%5D=true&columns%5B5%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B5%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B6%5D%5Bdata%5D=q1_output&columns%5B6%5D%5Bname%5D=&columns%5B6%5D%5Bsearchable%5D=true&columns%5B6%5D%5Borderable%5D=true&columns%5B6%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B6%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B7%5D%5Bdata%5D=q1_status&columns%5B7%5D%5Bname%5D=&columns%5B7%5D%5Bsearchable%5D=true&columns%5B7%5D%5Borderable%5D=true&columns%5B7%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B7%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B8%5D%5Bdata%5D=q2_output&columns%5B8%5D%5Bname%5D=&columns%5B8%5D%5Bsearchable%5D=true&columns%5B8%5D%5Borderable%5D=true&columns%5B8%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B8%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B9%5D%5Bdata%5D=q2_status&columns%5B9%5D%5Bname%5D=&columns%5B9%5D%5Bsearchable%5D=true&columns%5B9%5D%5Borderable%5D=true&columns%5B9%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B9%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B10%5D%5Bdata%5D=q3_output&columns%5B10%5D%5Bname%5D=&columns%5B10%5D%5Bsearchable%5D=true&columns%5B10%5D%5Borderable%5D=true&columns%5B10%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B10%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B11%5D%5Bdata%5D=q3_status&columns%5B11%5D%5Bname%5D=&columns%5B11%5D%5Bsearchable%5D=true&columns%5B11%5D%5Borderable%5D=true&columns%5B11%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B11%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B12%5D%5Bdata%5D=fye_output&columns%5B12%5D%5Bname%5D=&columns%5B12%5D%5Bsearchable%5D=true&columns%5B12%5D%5Borderable%5D=true&columns%5B12%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B12%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B13%5D%5Bdata%5D=status&columns%5B13%5D%5Bname%5D=&columns%5B13%5D%5Bsearchable%5D=true&columns%5B13%5D%5Borderable%5D=true&columns%5B13%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B13%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B14%5D%5Bdata%5D=created_at&columns%5B14%5D%5Bname%5D=&columns%5B14%5D%5Bsearchable%5D=true&columns%5B14%5D%5Borderable%5D=true&columns%5B14%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B14%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B15%5D%5Bdata%5D=updated_at&columns%5B15%5D%5Bname%5D=&columns%5B15%5D%5Bsearchable%5D=true&columns%5B15%5D%5Borderable%5D=true&columns%5B15%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B15%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B16%5D%5Bdata%5D=no_delete_mission&columns%5B16%5D%5Bname%5D=&columns%5B16%5D%5Bsearchable%5D=false&columns%5B16%5D%5Borderable%5D=false&columns%5B16%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B16%5D%5Bsearch%5D%5Bregex%5D=false&order%5B0%5D%5Bcolumn%5D=0&order%5B0%5D%5Bdir%5D=asc&start=0&length=10&search%5Bvalue%5D=bb&search%5Bregex%5D=false&_=1530222117292"> for 127.0.0.1 at 2018-06-28 22:42:29 +0100 Processing by> MissionsController#index as JSON   Parameters: {"draw"=>"3",> "columns"=>{"0"=>{"data"=>"fy", "name"=>"", "searchable"=>"true",> "orderable"=>"true", "search"=>{"value"=>"", "regex"=>"false"}},> "1"=>{"data"=>"associate_email", "name"=>"", "searchable"=>"true",> "orderable"=>"true", "search"=>{"value"=>"", "regex"=>"false"}},> "2"=>{"data"=>"guild_name", "name"=>"", "searchable"=>"true",> "orderable"=>"true", "search"=>{"value"=>"", "regex"=>"false"}},> "3"=>{"data"=>"coordinator_email", "name"=>"", "searchable"=>"true",> "orderable"=>"true", "search"=>{"value"=>"", "regex"=>"false"}},> "4"=>{"data"=>"name", "name"=>"", "searchable"=>"true",> "orderable"=>"true", "search"=>{"value"=>"", "regex"=>"false"}},> "5"=>{"data"=>"eighty", "name"=>"", "searchable"=>"true",> "orderable"=>"true", "search"=>{"value"=>"", "regex"=>"false"}},> "6"=>{"data"=>"q1_output", "name"=>"", "searchable"=>"true",> "orderable"=>"true", "search"=>{"value"=>"", "regex"=>"false"}},> "7"=>{"data"=>"q1_status", "name"=>"", "searchable"=>"true",> "orderable"=>"true", "search"=>{"value"=>"", "regex"=>"false"}},> "8"=>{"data"=>"q2_output", "name"=>"", "searchable"=>"true",> "orderable"=>"true", "search"=>{"value"=>"", "regex"=>"false"}},> "9"=>{"data"=>"q2_status", "name"=>"", "searchable"=>"true",> "orderable"=>"true", "search"=>{"value"=>"", "regex"=>"false"}},> "10"=>{"data"=>"q3_output", "name"=>"", "searchable"=>"true",> "orderable"=>"true", "search"=>{"value"=>"", "regex"=>"false"}},> "11"=>{"data"=>"q3_status", "name"=>"", "searchable"=>"true",> "orderable"=>"true", "search"=>{"value"=>"", "regex"=>"false"}},> "12"=>{"data"=>"fye_output", "name"=>"", "searchable"=>"true",> "orderable"=>"true", "search"=>{"value"=>"", "regex"=>"false"}},> "13"=>{"data"=>"status", "name"=>"", "searchable"=>"true",> "orderable"=>"true", "search"=>{"value"=>"", "regex"=>"false"}},> "14"=>{"data"=>"created_at", "name"=>"", "searchable"=>"true",> "orderable"=>"true", "search"=>{"value"=>"", "regex"=>"false"}},> "15"=>{"data"=>"updated_at", "name"=>"", "searchable"=>"true",> "orderable"=>"true", "search"=>{"value"=>"", "regex"=>"false"}},> "16"=>{"data"=>"no_delete_mission", "name"=>"", "searchable"=>"false",> "orderable"=>"false", "search"=>{"value"=>"", "regex"=>"false"}}},> "order"=>{"0"=>{"column"=>"0", "dir"=>"asc"}}, "start"=>"0",> "length"=>"10", "search"=>{"value"=>"bb", "regex"=>"false"},> "_"=>"1530222117292"}   ActiveRecord::SessionStore::Session Load> (3.6ms)  SELECT  "sessions".* FROM "sessions" WHERE> "sessions"."session_id" = $1  ORDER BY "sessions"."id" ASC LIMIT 1 > [["session_id", "1f1458aac34369eaa4ce2ddcd835c07c"]]   User Load> (1.3ms)  SELECT  "users".* FROM "users" WHERE "users"."id" = $1  ORDER> BY "users"."id" ASC LIMIT 1  [["id", 58]]   User Load (0.9ms)  SELECT > "users".* FROM "users" WHERE "users"."id" = 58  ORDER BY "users"."id"> ASC LIMIT 1    (0.8ms)  SELECT "tribes"."region" FROM "tribes" WHERE> (region is not null)    (2.3ms)  SELECT COUNT(*) FROM "missions" INNER> JOIN "associates" ON "associates"."id" = "missions"."associate_id"> INNER JOIN "associates""coordinators_missions" ON> "coordinators_missions"."id" = "missions"."coordinator_id" Completed> 500 Internal Server Error in 32ms (ActiveRecord: 14.2ms)> > NameError (uninitialized constant Coordinator):  > app/controllers/missions_controller.rb:15:in `block (2 levels) in> index'   app/controllers/missions_controller.rb:11:in `index'

edit2: controller code

 def index     respond_to do |format|      format.html      format.json do         render json: ::MissionDatatable.new(view_context, {region: get_current_user_region_filter})      end    end  end

Viewing all articles
Browse latest Browse all 4619

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>