Search Results

Search found 8664 results on 347 pages for 'rails postgresql'.

Page 286/347 | < Previous Page | 282 283 284 285 286 287 288 289 290 291 292 293  | Next Page >

  • RSpec View testing: How to modify params?

    - by sebastiangeiger
    I am trying to test my views with RSpec. The particular view that is causing me troubles changes its appearance depending on a url parameter: link_to "sort>name", model_path(:sort_by => 'name') which results in http://mydomain/model?sort_by=name My view then uses this parameter like that: <% if params[:sort_by] == 'name' %> <div>Sorted by Name</div> <% end %> The RSpec looks like this: it "should tell the user the attribute for sorting order" do #Problem: assign params[:sort_for] = 'name' render "/groups/index.html.erb" response.should have_tag("div", "Sorted by Name") end I would like to test my view (without controller) in RSpec but I can't get this parameter into my params variable. I tried assign in all different flavours: assign[:params] = {:sort_by => 'name'} assign[:params][:sort_by] = 'name' ... no success so far. Every idea is appreciated.

    Read the article

  • Redirect on catching an exception in a method in the model

    - by Arkid
    I am using Authlogic-connect to connect various service providers. There is a method in user.rb def complete_oauth_transaction token = token_class.new(oauth_token_and_secret) old_token = token_class.find_by_key_or_token(token.key, token.token) token = old_token if old_token if has_token?(oauth_provider) self.errors.add(:tokens, "you have already created an account using your #{token_class.service_name} account, so it") else self.access_tokens << token end end When a service provider is already added it gives the error as stated in the has_token? method and the page breaks. I need to redirect the app to the same page and flash the error. How do i do this? I have overridden the method in my own user.rb so that I can change the code.

    Read the article

  • mysterious difference between rake test and ruby

    - by standup75
    Here is the mysterious: I have a scope which looks like this (in Image.rb) scope :moderate_all, delegates.where("moderation_flag = #{$moderation_flags[:not_moderated]}") Note that delegates is another scope that I am defining before moderate_all When I leave it like this, I can run my test that checks if an image has been "checked-out" it is not available anymore. I don't put the code of the test, because it does not matter actually. With this code, when I run "rake test" it fails, but if I do "ruby test/unit/image_test.rb" it works! I was thinking I am starting to have a bad day. Then I tried scope :moderate_all, lambda { delegates.where("moderation_flag = #{$moderation_flags[:not_moderated]}") } And "rake test" passes! So my problem is solved, but why?

    Read the article

  • Saving an ActiveRecord non-transactionally.

    - by theFunkyEngineer
    My application accepts file uploads, with some metadata being stored in the DB, and the file itself on the file system. I am trying to make the metadata visible in the application before the file upload and post-processing are finished, but because saves are transactional, I have had no success. I have tried the callbacks and calling create_or_update() instead of save(), all to no avail. Is there a way to do this without re-writing the guts of ActiveRecord::Base? I've even attempted naming the method make() instead of save(), but perplexingly that had no effect. The code below "works" fine, but the database is not modified until everything else is finished. def save(upload) uploadFile = upload['datafile'] originalName = uploadFile.original_filename self.fileType = File.extname(originalName) create_or_update() # write the file File.open(self.filePath, "wb") { |f| f.write(uploadFile.read) } begin musicFile = TagLib::File.new(self.filePath()) self.id3Title = musicFile.title self.id3Artist = musicFile.artist self.id3Length = musicFile.length rescue TagLib::BadFile => exc logger.error("Failed to id track: \n #{exc}") end if(self.fileType == '.mp3') convertToOGG(); end create_or_update() end Any ideas would be quite welcome, thanks.

    Read the article

  • how to save related models with non-null foreign key

    - by Fortress
    I have a model called user which has_one email. I put the foreign key (NOT NULL) inside users table. Now I'm trying to save it in the following way: @email = Email.new(params[:email]) @email.user = User.new(params[:user]) @email.save This raises a db exception, because the foreign key constraint is not met (NULL is inserted into email_id). How can I elegantly solve this or is my data modeling wrong?

    Read the article

  • ferret,multiple model search -undefined method `aaf_index' for #<Class:>

    - by jissy
    ferret,multiple model search - I have 2 models A and B.I want to perform a text search by using 3 fields; title, description(part of A) and comment(part of B). Where I want to include the comment field to perform the ferret search.Then,what other changes needed. class A < ActiveRecord::Base has_one :b acts_as_ferret :fields => [:title, :description], :additional_fields => [:comment_text] def comment_text return b.comment end In a_controller, i wrote: @search = A.find_with_ferret( params[:st][:text_search], :limit => :all, :multi => [B] ).paginate :per_page =>10, :page=>params[:page] The second mosel is given below: class B < ActiveRecord::Base belongs_to :a while using :multi[B] option with the find_with_ferret,the following error is getting: undefined method `aaf_index' for #ClassName

    Read the article

  • paginate the class

    - by small
    please help me with pagination of this method my method is this one controller # def show @topic = Topic.find(params[:id]) @posts = @topic.posts.find(:all ,:order=> 'id') end views # %div{:style=>"margin: 0 auto;"} %table.sortable.style2{:cellpadding=>5} %thead %tr %td{:width => "25%",:align => "center",:style => "font-weight: bold;"}Posted By %td{:width => "75%",:style => "font-weight: bold;"}Comments %tbody - for post in @posts %tr %td{:align => "center"} &nbsp %div{:width=>"5px" , :style=>"border: 1px solid rgb(232, 232, 232);background-color: rgb(248, 248, 248);width: 60px; height:60px;" } - if post.posted_by.image = image_tag(post.posted_by.image.public_filename(),:width => "60px", :height => "60px",:align=>"center") %div{:style => "font-weight: bold; font-style: italic;"} = post.posted_by ? post.posted_by.firstname : "<em>Unknown User</em>" %br %div{:style => "font-style: italic;"} Posted on = post.created_at.strftime('%d of %B %Y ') = post.created_at.strftime('at %H:%M') %td{:valign => "top"} =post.body

    Read the article

  • Select-all checkboxes in a FORM_TAG

    - by Horace Ho
    In a form_tag, there is a list of 10 to 15 checkboxes: <%= check_box_tag 'vehicles[]', car.id %> How can I select-all (put a tick in every single) checkboxes by RJS? Thanks EDIT: Sorry I didn't make my question clear. What I meant to ask is how to add a "Select/Un-select All" link in the same page to toggle the checkboxes.

    Read the article

  • How to customize the to_json method in rails3?

    - by lashleigh
    I want to convert an array of Place objects to json, I've been doing it like this: var places = <%= @places.to_json.html_safe %>; The only problem is that every place in the @places array has an associated tag list that doesn't get included. I'm using the acts_as_taggable_on gem to handle tags, so to get the tag list for a place I need to say place.tag_list. What do I have to do to get the tag_list included for each place in the javascript array? I think I'll need to write my own to_json method but I don't know how. Thanks

    Read the article

  • has_many :through name suggestions

    - by user1084769
    I have three models, user, achievement, badge and I plan on using has_many :through instead of has_many_and_belongs_to since I will have a few extra fields in the join tables. According to a Railscast I watched, using this method requires coming up with new model names and not user_badge or user_achievement. For my User Achievement join what do you think of Accomplishment? For my User Badge join what do you think of Distinction?

    Read the article

  • How can you pass an object from the form_for helper to a method?

    - by Alex
    So let's say I have a form which is being sent somewhere strange (and by strange we mean, NOT the default route: <% form_for @form_object, :url => {:controller => 'application', :action => 'form_action_thing'} do |f| %> <%= f.text_field :email %> <%= submit_tag 'Login' %> <% end %> Now let's say that we have the method that accepts it. def form_action_thing User.find(????? :email ?????) end My questions are thus: How does can I make the object @form_object available to the receiving method (in this case, form_action_tag)? I've tried params[:form_object], and I've scoured this site and the API, which I have to post below because SO doesn't believe I'm not a spammer (I'm a new member), as well as Googled as many permutations of this idea as I could think of. Nothing. Sorry if I missed something, i'm really trying. How do I address the object, once I've made it accessible to the method? Not params[:form_object], I'm guessing.

    Read the article

  • How do I dynamically change the path_to()?

    - by Angela
    I currently have three methods which I want to collapse into one: def send_email(contact,email) end def make_call(contact, call) return link_to "Call", new_contact_call_path(:contact => contact, :call => call, :status => 'called') end def make_letter(contact, letter) return link_to "Letter", new_contact_letter_path(:contact => contact, :letter => letter, :status => 'mailed') end I want to collapse the three into one so that I can just pass the Model as one of the parameters and it will still correctly create the path_to. I am trying to do this with the following, but stuck: def do_event(contact, call_or_email_or_letter) model_name = call_or_email_or_letter.class.name.tableize.singularize link_to "#{model_name.camelize}", new_contact_#{model_name}_path(contact, call_or_email_or_letter)" end

    Read the article

  • How to copy a file using Paperclip

    - by CalebHC
    Does anyone know of a way to copy files with Paperclip using S3 for storage? Before I try to write my own, I just wanted to make sure there wasn't already a way to do this. Speaking of copying, is there an easier way of copying a whole model including all of its has_many relationships? Sorry for the second question but it kind of fits! :) Thanks

    Read the article

  • How can I make an aggregated property support ActiveRecord::Dirty semantics?

    - by Eric
    I have an aggregated attribute which I want to be able ask about its _changed? ness, etc. composed_of :range, :class_name => 'Range', :mapping => [ %w(range_begin begin), %w(range_end end)], :allow_nil => true If I use the aggregation: foo.range = 1..10 This is what I get: foo.range # => 1..10 foo.range_changed? # NoMethodError foo.range_was # ditto foo.changed # ['range_begin', 'range_end'] So basically, I'm not getting ActiveRecord::Dirty semanitcs on aggregated attributes. Is there any way to do that? I'm not having a lot of luck with alias_attribute_with_dirty, etc.

    Read the article

  • How do I order by foreign attribute for belongs_to reference where there are 2 keys to foreign table

    - by Will
    I have a Model which has a belongs_to association with another Model as follows class Article belongs_to :author, :class_name => "User" end If I wanted to find all articles for a particular genre ordered by author I would do something like the following articles = Article.all(:includes => [:author], :order => "users.name") However if Article happens to have two references to User how can I sort on :author? class Article belongs_to :editor, :class_name => "User" belongs_to :author, :class_name => "User" end I have tried articles = Article.all(:includes => [:author], :order => "users.name") #=> incorrect results articles = Article.all(:includes => [:author], :order => "authors.name") #=> Exception Thrown

    Read the article

  • has_many conditions

    - by user305270
    c = "(f.profile_id = #{self.id} OR f.friend_id = #{self.id})" c += AND + "(CASE WHEN f.profile_id=#{self.id} THEN f.friend_id ELSE f.profile_id END = p.id)" c += AND + "(CASE WHEN f.profile_id=#{self.id} THEN f.profile_rejected ELSE f.friend_rejected END = 1)" c += AND + "(p.banned = 0)" I need this to be used in a has_many relationship like this: has_many :removed_friends, :conditions => ??? how do i set there the self.id?, or how do i pass there the id? Then i want to use the will_paginate plugin: @profile.removed_friends.paginate(:page => 1, :per_page => 20) Thanks for your help

    Read the article

  • Delayed Jobs is not finding Records and failing..

    - by Trip
    In my app, delayed jobs isn't running automatically on my server anymore. It used to.. When I manually ssh in, and perform rake jobs:work I return this : * Starting job worker host:ip-(censored) pid:21458 * [Worker(host:ip-(censored) pid:21458)] acquired lock on PhotoJob * [JOB] host:ip-(censored) pid:21458 failed with ActiveRecord::RecordNotFound: Couldn't find Photo with ID=9237 - 4 failed attempts This returns roughly 20 times over for what I think is several jobs. Then I get a few of these: [Worker(host:ip-(censored) pid:21458)] failed to acquire exclusive lock for PhotoJob And then finally one of these : 12 jobs processed at 73.6807 j/s, 12 failed ... Any ideas what I should be mulling over? Thanks so much!

    Read the article

  • How do I create a new instance of a different class when saving a model

    - by Will
    I have a Class A that when it is instantiated and saved for the first time or modified it will create an instance of Class B and save it also I want them to be in the same transaction and I want it to be handled in the Model not a controller. I know how to do this in a conteoller with the ‘transaction do’ block but how do I do it in the model? Thanks

    Read the article

  • Ordering .each results in the view...

    - by bgadoci
    I am wondering if it is possible to dictate the order (i.e. :order = 'created_at DESC') within the view. I realize that logic in the view is not ideal but I seem to be having some problems locating where to affect this output. For instance, here is my code: <% @user.questions.each do |question| %> <%= link_to_unless_current h (question.title), question %> Created about <%= time_ago_in_words h(question.created_at) %> ago Updated about <%= time_ago_in_words h(question.updated_at) %> ago <%= link_to 'Edit', edit_question_path(question) %> | <%= link_to 'Destroy', question, :confirm => 'Are you sure?', :method => :delete %> <% end %> In my QuestionsController I have the following index action but it is not affecting the output from the code above. class QuestionsController < ApplicationController def index @questions = Question.all(:order => 'created_at DESC', :limit => 20) respond_to do |format| format.html # index.html.erb format.xml { render :xml => @questions } end end end

    Read the article

  • How can I get model names from inside my app?

    - by Cameron
    I have a bunch of models in a sub-directory that inherit from a model in the models root directory. I want to be able to set a class variable in another model that lists each inherited model class. i.e @@groups = sub_models.map do { |model| model.class.to_s } Not sure how to get at this info though...

    Read the article

  • show array size with will_paginate

    - by chief
    @users = User.paginate( :page => params[:page], :per_page => 2, I would like to return the total number of results. @users.size simply gives me the number of results on a page. If page 1 has 2 users @users.size = 2, going to page 2 with say 1 user @users.size = 1. How can I show the size of all the users?

    Read the article

< Previous Page | 282 283 284 285 286 287 288 289 290 291 292 293  | Next Page >