Search Results

Search found 9437 results on 378 pages for 'rails newbie'.

Page 88/378 | < Previous Page | 84 85 86 87 88 89 90 91 92 93 94 95  | Next Page >

  • How to test rails ETag caching?

    - by ifesdjeen
    Hi, Is it possible to cover my controller, that is highly depeinding on Etags with unit tests? Here's what i'm trying to do: in case if page is not stale (meaning that it's fresh), i'm adding some header to response. When i'm trying to test it all (rspec), no matter how many similar requests i have, i still receive 200 OK instead of 304, and my header doesn't get modified. Furthermore, if i track request.fresh?(response), it's ALWAYS false. However, it perfectly works in browser. I've already tried to state ActionController::Base.perform_caching = true, it doesn't change the overall situation. Thank you

    Read the article

  • can't run cucumber scenarios due to test-unit version issue on Rails 2.3.5, Ruby 1.9.1

    - by Jeff D
    I've been trying to follow along in the RSpec book, (I'm new to all of this) and I have what appears to be some kind of versioning issue. If I try and run some simple scenarios, I get this error: can't activate test-unit (= 1.2.3, runtime) for [], already activated test-unit-2.0.7 for [] (Gem::LoadError) /Users/jeffdeville/.rvm/rubies/ruby-1.9.1-p378/lib/ruby/site_ruby/1.9.1/rubygems.rb:230:in activate' /Users/jeffdeville/.rvm/rubies/ruby-1.9.1-p378/lib/ruby/site_ruby/1.9.1/rubygems.rb:1056:ingem' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/rspec-1.3.0/lib/spec/interop/test.rb:4:in <top (required)>' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/polyglot-0.3.1/lib/polyglot.rb:64:inrequire' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/polyglot-0.3.1/lib/polyglot.rb:64:in require' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:158:inrequire' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/rspec-1.3.0/lib/spec/test/unit.rb:1:in <top (required)>' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/polyglot-0.3.1/lib/polyglot.rb:64:inrequire' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/polyglot-0.3.1/lib/polyglot.rb:64:in require' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:158:inrequire' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/rspec-rails-1.3.2/lib/spec/rails.rb:13:in <top (required)>' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/polyglot-0.3.1/lib/polyglot.rb:64:inrequire' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/polyglot-0.3.1/lib/polyglot.rb:64:in require' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:158:inrequire' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/cucumber-rails-0.3.0/lib/cucumber/rails/rspec.rb:15:in rescue in <top (required)>' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/cucumber-rails-0.3.0/lib/cucumber/rails/rspec.rb:3:in' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/polyglot-0.3.1/lib/polyglot.rb:64:in require' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/polyglot-0.3.1/lib/polyglot.rb:64:inrequire' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:158:in require' /Users/jeffdeville/code/showtime/Features/support/env.rb:11:in' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/polyglot-0.3.1/lib/polyglot.rb:64:in require' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/polyglot-0.3.1/lib/polyglot.rb:64:inrequire' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/cucumber-0.6.4/lib/cucumber/rb_support/rb_language.rb:124:in load_code_file' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/cucumber-0.6.4/lib/cucumber/step_mother.rb:85:inload_code_file' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/cucumber-0.6.4/lib/cucumber/step_mother.rb:77:in block in load_code_files' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/cucumber-0.6.4/lib/cucumber/step_mother.rb:76:ineach' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/cucumber-0.6.4/lib/cucumber/step_mother.rb:76:in load_code_files' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/cucumber-0.6.4/lib/cucumber/cli/main.rb:48:inexecute!' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/cucumber-0.6.4/lib/cucumber/cli/main.rb:20:in execute' /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378/gems/cucumber-0.6.4/bin/cucumber:8:in' script/cucumber:9:in load' script/cucumber:9:in' however, uninstalling 2.0.7 yields the error: Missing these required gems: test-unit = 2.0.7 You're running: ruby 1.9.1.378 at /Users/jeffdeville/.rvm/rubies/ruby-1.9.1-p378/bin/ruby rubygems 1.3.6 at /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378, /Users/jeffdeville/.rvm/gems/ruby-1.9.1-p378@global Run rake gems:install to install the missing gems. Sorry this is probably something easy, but I just don't know ruby or rails well enough yet.

    Read the article

  • Rails single table inheritance/subclass find condition in parent

    - by slythic
    Hi all, I have a table called Users (class User < ActiveRecord::Base) and a subclass/STI of it for Clients (class Client < User). Client "filtering" works as expected, in other words Client.find(:all) works to find all the clients. However, for users I need to filter the result to only find users that are NOT clients (where type is null or blank). I've tried the following in my index controller but no matter what I put for the type it returns all users regardless of type. User.find(:all, :conditions => { :type => nil }, :order => 'name') Any clue on how to get this condition to work? Thanks!

    Read the article

  • Rails: Should partials be aware of instance variables?

    - by Alexandre
    Ryan Bates' nifty_scaffolding, for example, does this edit.html.erb <%= render :partial => 'form' %> new.html.erb <%= render :partial => 'form' %> _form.html.erb <%= form_for @some_object_defined_in_action %> That hidden state makes me feel uncomfortable, so I usually like to do this edit.html.erb <%= render :partial => 'form', :locals => { :object => @my_object } %> _form.html.erb <%= form_for object %> So which is better: a) having partials access instance variables or b) passing a partial all the variables it needs? I've been opting for b) as of late, but I did run into a little pickle: some_action.html.erb <% @dad.sons.each do |a_son| %> <%= render :partial => 'partial', :locals => { :son => a_son } %> <% end %> _partial.html.erb The son's name is <%= son.name %> The dad's name is <%= son.dad.name %> son.dad makes a database call to fetch the dad! So I would either have to access @dad, which would be going back to a) having partials access instance variables or I would have to pass @dad in locals, changing render :partial to <%= render :partial = 'partial', :locals = { :dad = @dad, :son = a_son } %, and for some reason passing a bunch of vars to my partial makes me feel uncomfortable. Maybe others feel this way as well. Hopefully that made some sense. Looking for some insight into this whole thing... Thanks!

    Read the article

  • How to set locale default_url_options for functional tests (Rails)

    - by insane.dreamer
    In my application_controller, I have the following set to include the locale with all paths generated by url_for: def default_url_options(options={}) { :locale => I18n.locale } end My resource routes then have a :path_prefix = "/:locale" Works fine on the site. But when it comes to my functional tests, the :locale is not passed with the generated urls, and therefore they all fail. I can get around it by adding the locale to the url in my tests, like so: get :new, :locale => 'en' But I don't want to have to manually add the locale to every functional test. I tried adding the default_url_options def above to test_helper, but it seems to have no effect. Is there any way I can change the default_url_options to include the locale for all my tests? Thanks.

    Read the article

  • Rails AtomFeedBuilder Entry :Url option appears in url tag but not in link tag

    - by Nick
    Hello, I'm using the AtomFeedHelper and everything is working fine except for one feed where I need to link each entry to a URL which is not the default polymorphic_url for the record. Per the documentation I've specified an :url option for the entry. This correctly renders a <url> tag in the atom node but the <link rel="alternate" still points to the default polymorphic_url. Looking at the source and the documentation I don't understand why this is happening. Here's an example builder: atom_feed do |feed| feed.title("Reports") feed.updated(@reports.first.created_at) for report in @reports content = report.notes feed.entry(report) do |entry| entry.title(report.title) entry.content(content, :type => 'html') entry.url("http://myhost/page/") entry.updated(report.updated_at.strftime("%Y-%m-%dT%H:%M:%SZ")) entry.author do |author| author.name(report.user.username) end end end end Here's an example of a problem node: <entry> <id>tag:molly.recargo.com,2005:SiteReport/2</id> <published>2010-03-30T13:11:07-07:00</published> <updated>2010-03-30T13:11:07-07:00</updated> <link rel="alternate" type="text/html" href="http://myhost/site_reports/2"/> <title>Test Title</title> <content type="html">Test Content</content> <url>http://myhost/page/</url> <updated>2010-03-30T13:11:07Z</updated> <author> <name>Author</name> </author> </entry> I wan the href value in the link tag to match the value in the url tag but it does not. When I look at the source listed for entry here http://api.rubyonrails.org/classes/ActionView/Helpers/AtomFeedHelper/AtomFeedBuilder.html I'd assume that this line would work correctly: @xml.link(:rel => 'alternate', :type => 'text/html', :href => options[:url] || @view.polymorphic_url(record)) Confused. Has anyone encountered this before? Thanks all!

    Read the article

  • Unobtrusive jQuery and Rails with AJAX and form validation

    - by bogumbiker
    Hello, I am looking for a way to call successfully custom function from submitHandler to do proper ajax post. Here is my custom function: jQuery.fn.submitWithAjax = function() { this.submit(function() { $.post(this.action, $(this).serialize(), null, "script"); return false; }) return this; }; Before using validate plugin I had following which worked fine: $(document).ready(function() { $("#my_form").submitWithAjax(); } Now I have added the validation part and have no idea how to call my custom submitWithAjax function?? $(document).ready(function() { $("#my_form").validate({ /*Validations - works perfectly!! */ }, submitHandler: function(form) { /* $("#my_form").submitWithAjax(); - this works but introduces recursion */ /* how to call custom subitWithAjax() ????? */ } }); }) Thanks!

    Read the article

  • Rails routes creating additional info in URL

    - by Danny McClelland
    Hi Everyone, Say if I have a model called 'deliver' and I am using the default URL route of: # Install the default routes as the lowest priority. map.connect ':controller/:action/:id' map.connect ':controller/:action/:id.:format' So the deliver URL would be: http://localhost:3000/deliver/123 What I am trying to work out, is how to use another field from the database alongside or instead of the ID. For example. If I have a field in the create view called 'deliveraddress', how do I put that into the routes? So I can have something link this: http://localhost:3000/deliver/deliveraddress Thanks, Danny

    Read the article

  • Include dynamic info in Rails emails

    - by Danny McClelland
    Hi Everyone, I have managed to get my email problem sorted so now everytime a case is created an email goes out to the specified address. I have a usermailer.rb def makeakase(email, name, jobno, casesubject) recipients email from "no-reply@your_rails_app.com" subject "FW: Kase creation from Survey Manager" sent_on Time.now body :name => name end and I have the kases_controller.rb: if @kase.save UserMailer.deliver_makeakase("[email protected]", "Highrise") In the body I would like to use the tags that I use in the kase show view such as: <%=h @kase.jobno %> - <%=h @kase.casesubject %> but they don't work, I get the following error: wrong number of arguments (2 for 4) Any ideas? Thanks, Danny

    Read the article

  • will_paginate undefined method error - Ruby on Rails

    - by bgadoci
    I just installed the gem for will_paginate and it says that it was installed successfully. I followed all the instructions listed with the plugin and I am getting an 'undefined method `paginate' for' error. Can't find much in the way of Google search and haven't been able to fix it myself (obviously). Here is the code: PostsController def index @tag_counts = Tag.count(:group => :tag_name, :order => 'updated_at DESC', :limit => 10) @posts = Post.paginate :page => params[:page], :per_page => 50 respond_to do |format| format.html # index.html.erb format.xml { render :xml => @posts } format.json { render :json => @posts } format.atom end end /model/post.rb class Post < ActiveRecord::Base validates_presence_of :body, :title has_many :comments, :dependent => :destroy has_many :tags, :dependent => :destroy cattr_reader :per_page @@per_page = 10 end /posts/views/index.html.erb <%= will_paginate @posts %>

    Read the article

  • Rails has_many with dinamyc :conditions

    - by Fabiano PS
    Hello! What I want is to create a Model that connects with other by a has_many in a dinamic way, without the foreing_key like this: has_many :faixas_aliquotas, :class_name => 'Fiscal::FaixaAliquota', :conditions => ["regra_fiscal = ?", ( lambda { return self.regra_fiscal } ) ] But I get the error: : SELECT * FROM "fis_faixa_aliquota" WHERE ("fis_faixa_aliquota".situacao_fiscal_id = 1 AND (regra_fiscal = E'--- !ruby/object:Proc {}')) Is my will makeable? I don't wanna black magic solution..

    Read the article

  • in rails should i be installing as a gem or a plugin

    - by drake
    I am trying to use acts_as_audited plugin. Should I be installing it as a gem (put it in environment.rb) or a plugin? what is the advantage of one over the other. Later on I plan to put this app on the clients server for permanent hosting. so am I better off having it as a gem? if it is as a gem ...when i put the app on the clients server..will I not have to get this plugin again?

    Read the article

  • Rails has_and_belongs_to_many relationship question

    - by Kevin Whitaker
    Hello all, I'm sure that this question has been asked somewhere before, as the habtm relationship seems to be very confusing. I have two models, users and promotions. The idea is that a promotion can have many users, and a user can have many promotions. class User < ActiveRecord::Base has_and_belongs_to_many :promotions end class Promotion < ActiveRecord::Base has_and_belongs_to_many :users end I also have a promotions_users table/model, with no id of its own. It references user_id and promotions_id class PromotionsUsers < ActiveRecord::Base end So, how do I add a user to a promotion? I've tried something like this: user = User.find(params[:id]) promotion = Promotion.find(params[:promo_id]) promo = user.promotions.new(promo) This results in the following error: NoMethodError: undefined method `stringify_keys!' for #<Promotion:0x10514d420> If I try this line instead: promo= user.promotions.new(promo.id) I get this error: TypeError: can't dup Fixnum I'm sure that there is a very easy solution to my problem, and I'm just not searching for the solution the right way. Thank you for your time, and any help you can provide.

    Read the article

  • rails question find no result

    - by Small Wolf
    Hey.Guys! Now .I have a question ,i want someone to help me to solve it ,the log of the problem like the under text >> Department.find(EmeReference.find(:all,:select =>:ref_config_id,:conditions=>"emergency_id = 1")) ActiveRecord::RecordNotFound: Couldn't find Department with ID=0 from /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/base.rb:1591:in `find_one' from /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/base.rb:1574:in `find_from_ids_without_cache' from (__DELEGATION__):2:in `__send__' from (__DELEGATION__):2:in `find_from_ids_without_cache' from /usr/lib/ruby/gems/1.8/gems/nkallen-cache-money-0.2.5/lib/cash/query/abstract.rb:158:in `find_from_keys' from /usr/lib/ruby/gems/1.8/gems/nkallen-cache-money-0.2.5/lib/cash/query/primary_key.rb:31:in `miss' from /usr/lib/ruby/gems/1.8/gems/nkallen-cache-money-0.2.5/lib/cash/query/abstract.rb:66:in `hit_or_miss' from /usr/lib/ruby/gems/1.8/gems/nkallen-cache-money-0.2.5/lib/cash/accessor.rb:17:in `call' from /usr/lib/ruby/gems/1.8/gems/nkallen-cache-money-0.2.5/lib/cash/accessor.rb:17:in `fetch' from /usr/lib/ruby/gems/1.8/gems/nkallen-cache-money-0.2.5/lib/cash/accessor.rb:29:in `get' from /usr/lib/ruby/gems/1.8/gems/nkallen-cache-money-0.2.5/lib/cash/query/abstract.rb:65:in `hit_or_miss' from /usr/lib/ruby/gems/1.8/gems/nkallen-cache-money-0.2.5/lib/cash/query/abstract.rb:18:in `perform' from /usr/lib/ruby/gems/1.8/gems/nkallen-cache-money-0.2.5/lib/cash/query/primary_key.rb:17:in `perform' from /usr/lib/ruby/gems/1.8/gems/nkallen-cache-money-0.2.5/lib/cash/query/abstract.rb:7:in `perform' from /usr/lib/ruby/gems/1.8/gems/nkallen-cache-money-0.2.5/lib/cash/finders.rb:29:in `find_from_ids' from /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/base.rb:616:in `find' from (irb):135 that's the question! Thank your and best regards!

    Read the article

  • factorygirl rails, says "top required" in my spec - don't know how to fix

    - by user924088
    I get the following error message when I run my tests. It says that the problem is in my lecture_spec, and that the top is required. I don't know if this has something to do with requiring my spec_helper.rb file. 1) Lecture has a valid factory Failure/Error: FactoryGirl.create(:lecture).should be_valid NoMethodError: undefined method `after_build=' for #<Lecture:0x007fe7747bce70> # ./spec/models/lecture_spec.rb:21:in `block (2 levels) in <top (required)>' My factory looks like the following: require 'faker' FactoryGirl.define do factory :question do association :lecture name { Faker::Lorem.words(1) } description {Faker::Lorem.words(7)} factory :question_one do answer 1 end factory :question_two do answer 2 end factory :question_three do answer 3 end end end And this is my lecture_spec file require 'spec_helper' describe Lecture do it "has a valid factory" do FactoryGirl.create(:lecture).should be_valid end end and this is my lecture factory, where I defined the lecture factory. FactoryGirl.define do factory :lecture do #association :question name {Faker::Lorem.words(1)} description {Faker::Lorem.words(7)} soundfile_file_name {Faker::Lorem.words(1)} soundfile_content_type {Faker::Lorem.words(3)} soundfile_file_size {Faker::Lorem.words(8)} after_build do |question| [:question_one, :question_two, :question_three].each do |question| association :questions, factory: :question, strategy: :build end end end end

    Read the article

  • Rails: keeping DRY with ActiveRecord models that share similar complex attributes

    - by Greg
    This seems like it should have a straightforward answer, but after much time on Google and SO I can't find it. It might be a case of missing the right keywords. In my RoR application I have several models that share a specific kind of string attribute that has special validation and other functionality. The closest similar example I can think of is a string that represents a URL. This leads to a lot of duplication in the models (and even more duplication in the unit tests), but I'm not sure how to make it more DRY. I can think of several possible directions... create a plugin along the lines of the "validates_url_format_of" plugin, but that would only make the validations DRY give this special string its own model, but this seems like a very heavy solution create a ruby class for this special string, but how do I get ActiveRecord to associate this class with the model attribute that is a string in the db Number 3 seems the most reasonable, but I can't figure out how to extend ActiveRecord to handle anything other than the base data types. Any pointers? Finally, if there is a way to do this, where in the folder hierarchy would you put the new class that is not a model? Many thanks.

    Read the article

  • Using will_paginate with AJAX live search with jQuery in Rails

    - by Mark Richman
    I am using will_paginate to successfully page through records. I am also using AJAX live search via jQuery to update my results div. No problem so far. The issue I have is when trying to paginate through those live search results. I simply get "Page is loading..." with no div update. Am I missing something fundamental? # index.html.erb <form id="searchform" accept-charset="utf-8" method="get" action="/search"> Search: <input id="search" name="search" type="text" autocomplete="off" title="Search location, company, description..." /> <%= image_tag("spinner.gif", :id => "spinner", :style =>"display: none;" ) %> </form> # JobsController#search def search if params[:search].nil? @jobs = Job.paginate :page => params[:page], :order => "created_at desc" elsif params[:search] and request.xhr? @jobs = Job.search params[:search], params[:page] end render :partial => "jobs", :layout => false, :locals => { :jobs => @jobs } end # Job#search def self.search(search, page) logger.debug "Job.paginate #{search}, #{page}" paginate :per_page => @@per_page, :page => page, :conditions => ["description LIKE ? or title LIKE ? or company LIKE ?", "%#{search}%", "%#{search}%", "%#{search}%"], :order => 'created_at DESC' end # search.js $(document).ready(function(){ $("#search").keyup(function() { $("#spinner").show(); // show the spinner var form = $(this).parents("form"); // grab the form wrapping the search bar. var url = form.attr("action"); // grab the URL from the form's action value. var formData = form.serialize(); // grab the data in the form $.get(url, formData, function(html) { // perform an AJAX get, the trailing function is what happens on successful get. $("#spinner").hide(); // hide the spinner $("#jobs").html(html); // replace the "results" div with the result of action taken }); }); });

    Read the article

  • no such file to load -- yet file is config.gem in environtment.rb file in rails

    - by Angela
    I keep getting this error for different gems, the most recent is acts_as_reportable: no such file to load -- acts_as_reportable However, I have the following line in my environment.rb: config.gem 'acts_as_reportable' And I also ran the following: >gem install acts_as_reportable It it output: >gem install acts_as_reportable Successfully installed acts_as_reportable-1.1.1 1 gem installed Installing ri documentation for acts_as_reportable-1.1.1... Installing RDoc documentation for acts_as_reportable-1.1.1... What do I need to do?

    Read the article

  • Rails accepts_nested_attributes_for and build_attribute with polymorphic relationships

    - by SooDesuNe
    The core of this question is where build_attribute is required in a model with nested attribuites I'm working with a few models that are setup like: class Person < ActiveRecord::Base has_one :contact accepts_nested_attributes_for :contact, :allow_destroy=> true end class Contact < ActiveRecord::Base belongs_to :person has_one :address, :as=>:addressable accepts_nested_attributes_for :address, :allow_destroy=> true end class Address < ActiveRecord::Base belongs_to :addressable, :polymorphic=>true end I have to define the new method of people_controller like: def new @person = Person.new @person.build_contact @person.contact.build_address #!not very good encapsulation respond_to do |format| format.html # new.html.erb format.xml { render :xml => @person } end end Without @person.contact.build_address the address relationship on contact is NIL. I don't like having to build_address in people_controller. That should be handled by Contact. Where do I define this in Contact since the contacts_controller is not involved here?

    Read the article

  • Using JSON input in Ruby method on Rails

    - by Zachary
    I am using jQuery to make an AJAX call to a ruby method in my controller. The javascript looks something like this: var latLongJSON = { "address": [ {"lat" : 50, "long" : 50} ] }; var returnedAddresses; $.ajax({ type: "GET", data: latLongJSON, url: "map/getaddresses", success: function(data) { returnedAddresses = JSON.parse(data); } }); Then in my 'getaddresses' method, my parameter coming through looks like: Parameters: {"address"=>"[object Object]"} I'm not sure what to do with this. I'm fairly new to Ruby, and I'm not sure if I need to convert this to something else, or what. Ideally I want to be able to pass in multiple sets of lat/long in the 'address' array, then be able to iterate over those in my Ruby code.

    Read the article

  • REST API Help in Rails

    - by dannymcc
    Hi Everyone, I am trying to get some information posted using our accountancy package (FreeAgentCentral) using their API via a GEM. http://github.com/aaronrussell/freeagent_api/ I have the following code to get it working (supposedly): Kase Controller def create @kase = Kase.new(params[:kase]) @company = Company.find(params[:kase][:company_id]) @kase = @company.kases.create!(params[:kase]) respond_to do |format| if @kase.save UserMailer.deliver_makeakase("[email protected]", "Highrise", @kase) @kase.create_freeagent_project(current_user) #flash[:notice] = 'Case was successfully created.' flash[:notice] = fading_flash_message("Case was successfully created & sent to Highrise.", 5) format.html { redirect_to(@kase) } format.xml { render :xml => @kase, :status => :created, :location => @kase } else format.html { render :action => "new" } format.xml { render :xml => @kase.errors, :status => :unprocessable_entity } end end end To save you looking through, the important part is: @kase.create_freeagent_project(current_user) Kase Model # FreeAgent API Project Create # Required attribues # :contact_id # :name # :payment_term_in_days # :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) p = Freeagent::Project.create( :contact_id => 0, :name => "#{jobno} - #{highrisesubject}", :payment_terms_in_days => 5, :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 ) end lib/freeagent_api.rb require 'rubygems' gem 'activeresource', '< 3.0.0.beta1' require 'active_resource' module Freeagent class << self def authenticate(options) Base.authenticate(options) end end class Error < StandardError; end class Base < ActiveResource::Base def self.authenticate(options) self.site = "https://#{options[:domain]}" self.user = options[:username] self.password = options[:password] end end # Company class Company def self.invoice_timeline InvoiceTimeline.find :all, :from => '/company/invoice_timeline.xml' end def self.tax_timeline TaxTimeline.find :all, :from => '/company/tax_timeline.xml' end end class InvoiceTimeline < Base self.prefix = '/company/' end class TaxTimeline < Base self.prefix = '/company/' end # Contacts class Contact < Base end # Projects class Project < Base def invoices Invoice.find :all, :from => "/projects/#{id}/invoices.xml" end def timeslips Timeslip.find :all, :from => "/projects/#{id}/timeslips.xml" end end # Tasks - Complete class Task < Base self.prefix = '/projects/:project_id/' end # Invoices - Complete class Invoice < Base def mark_as_draft connection.put("/invoices/#{id}/mark_as_draft.xml", encode, self.class.headers).tap do |response| load_attributes_from_response(response) end end def mark_as_sent connection.put("/invoices/#{id}/mark_as_sent.xml", encode, self.class.headers).tap do |response| load_attributes_from_response(response) end end def mark_as_cancelled connection.put("/invoices/#{id}/mark_as_cancelled.xml", encode, self.class.headers).tap do |response| load_attributes_from_response(response) end end end # Invoice items - Complete class InvoiceItem < Base self.prefix = '/invoices/:invoice_id/' end # Timeslips class Timeslip < Base def self.find(*arguments) scope = arguments.slice!(0) options = arguments.slice!(0) || {} if options[:params] && options[:params][:from] && options[:params][:to] options[:params][:view] = options[:params][:from]+'_'+options[:params][:to] options[:params].delete(:from) options[:params].delete(:to) end case scope when :all then find_every(options) when :first then find_every(options).first when :last then find_every(options).last when :one then find_one(options) else find_single(scope, options) end end end # Users class User < Base self.prefix = '/company/' def self.find_by_email(email) users = User.find :all users.each do |u| u.email == email ? (return u) : next end raise Error, "No user matches that email!" end end end config/initializers/freeagent.rb Freeagent.authenticate({ :domain => 'XXXXX.freeagentcentral.com', :username => '[email protected]', :password => 'XXXXXX' }) The above render the following error when trying to create a new Case and send the details to FreeAgent: ActiveResource::ResourceNotFound in KasesController#create Failed with 404 Not Found and ActiveResource::ResourceNotFound (Failed with 404 Not Found): app/models/kase.rb:56:in `create_freeagent_project' app/controllers/kases_controller.rb:96:in `create' app/controllers/kases_controller.rb:93:in `create' Rendered rescues/_trace (176.5ms) Rendered rescues/_request_and_response (1.1ms) Rendering rescues/layout (internal_server_error) If anyone can shed any light on this problem it would be greatly appreciated! Thanks, Danny

    Read the article

  • authlogic in Rails

    - by Adnan
    Hello, I am using the authlogic gem for authentication. I have followed the steps at: http://railscasts.com/episodes/160-authlogic I have the following code: # config/environment.rb config.gem "authlogic" # models/user.rb acts_as_authentic # users_controller.rb def create @user = User.new(params[:user]) if @user.save flash[:notice] = "Registration successful." redirect_to root_url else render :action => 'new' end end def edit @user = current_user end def update @user = current_user if @user.update_attributes(params[:user]) flash[:notice] = "Successfully updated profile." redirect_to root_url else render :action => 'edit' end end # user_sessions_controller.rb def create @user_session = UserSession.new(params[:user_session]) if @user_session.save flash[:notice] = "Successfully logged in." redirect_to root_url else render :action => 'new' end end def destroy @user_session = UserSession.find @user_session.destroy flash[:notice] = "Successfully logged out." redirect_to root_url end # application_controller.rb filter_parameter_logging :password helper_method :current_user private def current_user_session return @current_user_session if defined?(@current_user_session) @current_user_session = UserSession.find end def current_user return @current_user if defined?(@current_user) @current_user = current_user_session && current_user_session.record end # config/routes.rb map.login "login", :controller => "user_sessions", :action => "new" map.logout "logout", :controller => "user_sessions", :action => "destroy" I got it all working, except I would like to have a user_id in session so I can track which user posted which post, where should I set it?

    Read the article

  • Rails routes direct index action to show action

    - by jspooner
    So I created some rspec_scaffold for an Exercise model and added "map.resource :exercises" to my routes file and I was surprised when the "/exercises" url rendered the show action. What the heck? Why doesn't that render the index action? rake routes new_exercises GET /exercises/new(.:format) {:controller=>"exercises", :action=>"new"} edit_exercises GET /exercises/edit(.:format) {:controller=>"exercises", :action=>"edit"} exercises GET /exercises(.:format) {:controller=>"exercises", :action=>"show"} PUT /exercises(.:format) {:controller=>"exercises", :action=>"update"} DELETE /exercises(.:format) {:controller=>"exercises", :action=>"destroy"} POST /exercises(.:format) {:controller=>"exercises", :action=>"create"}

    Read the article

< Previous Page | 84 85 86 87 88 89 90 91 92 93 94 95  | Next Page >