Search Results

Search found 12783 results on 512 pages for 'ruby beginner'.

Page 112/512 | < Previous Page | 108 109 110 111 112 113 114 115 116 117 118 119  | Next Page >

  • Validate number of nested attributes

    - by Damien MATHIEU
    Hello, I have a model with nested attributes : class Foo < ActiveRecord::Base has_many :bar accepts_nested_attributes_for :bar end It works fine. However I'd want to be sure that for every Foo, I have at least two Bar. I can't access the bar_attributes in my validations so it seems I can't validate it. Is there any clean way to do so ?

    Read the article

  • Help installing delayed_job

    - by Mike
    I'm trying to use collectiveidea's delayed_job gem The installation instructions include Rake tasks are not automatically loaded from gems, so you’ll need to add the following to your Rakefile: begin require 'delayed/tasks' rescue LoadError STDERR.puts "Run `rake gems:install` to install delayed_job" end Where is my Rakefile? And what is a Rakefile?

    Read the article

  • Error with jquery-autocomplete in rails

    - by alexBrand
    I've been trying to get autocomplete to work, however, I am getting a weird javascript error in the firebug console... I used the https://github.com/crowdint/rails3-jquery-autocomplete gem. The error I am getting reads: $(e).autocomplete is not a function Here are the scripts i am including in my html: <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js" type="text/javascript"></script> <script src="/javascripts/autocomplete-rails.js?1294035084" type="text/javascript"></script> Thanks

    Read the article

  • I am validating for RegEx errors -- how can I return which keyword, it failed on?

    - by Trip
    I'm passing new objects through this set of regex : (?i)exp\s|(?i)expire\s|(?i)print|(?i)mention|(?i)spring|(?i)summer|(?i)winter|(?i)jan(\s|\.)|(?i)january|(?i)february|(?i)feb(\.|\s)|(?i)march|mar(\.|\s)|(?i)april|(?i)june|(?i)july|(?i)august|(?i)aug(\s|\.)|(?i)september|(?i)sept(\.|\s)|(?i)november|(?i)nov(\.|\s)|(?i)december|(?i)dec(\.|\s)|(?i)holiday|(?i)christmas|(?i)holloween|(?i)easter|(?i)season|(?i)ends|(?i)end If it errors, for example on the word christmas , how can I dynamically pull the word it errors on, and display it as the cause of the error?

    Read the article

  • Cleanup ActiveRecord field

    - by Beer Brother
    I have model Article it has field title with some text that may contain some "magic" patterns. In some cases i need to process text in title and other cases i don't, but in last case i need to get string w/o that patterns. For example i have title value like "Something **very** interesting" and when i call @article.title i need to get cleaned up string like "Something very interesting", but when i call @article.title_raw i need get original string. The problem also is that i have working application and i cannt do "revolution" but what way to go... -- Excuse me for my bad English.

    Read the article

  • rails link path and routing error

    - by Nick5a1
    <%= link_to t('.new', :default => t("helpers.links.new")), new_equipment_path, :class => 'btn btn-primary' %> I have the above code in a view, but am getting the following error when clicking the link: No route matches {:action=>"show", :controller=>"equipment"} My routes file contains: devise_for :users ActiveAdmin.routes(self) devise_for :admin_users, ActiveAdmin::Devise.config resources :equipment resources :workouts root :to => "home#index" match 'workouts/random', :to => 'workouts#random' match ':controller(/:action(/:id))(.:format)' Why is it trying to access the show action?

    Read the article

  • will_paginate without use of activerecord

    - by truthSeekr
    I apologize if this is a trivial question or my understanding of rails is weak. I have 2 actions in my controller, index and refine_data. index fetches and displays all the data from a database table. refine_data weeds out unwanted data using regex and returns a subset of the data. Controller looks like: def index Result.paginate :per_page => 5, :page => params[:page], :order => 'created_at DESC' end def refine_data results = Result.all new_results = get_subset(results) redirect_to :action => 'index' end I would like to redirect the refine_data action to the same view (index) with new_results. As new_results are not from the database table (or model), how do I go about constructing my paginate?

    Read the article

  • No route matches [GET] "/user/sign_out"

    - by user3399101
    So, I'm getting the below error when clicking on Sign Out on my drop down menu on the nav: No route matches [GET] "/user/sign_out" However, this only happens when using the sign out on the drop down nav (the hamburger menu for mobile devices) and not when clicking the sign out on the regular nav. See the code below: <div class="container demo-5"> <div class="main clearfix"> <div class="column"> <div id="dl-menu" class="dl-menuwrapper"> <button class="dl-trigger">Open Menu</button> <ul class="dl-menu dl-menu-toggle"> <div id="closebtn" onclick="closebtn()"></div> <% if user_signed_in? %> <li><%= link_to 'FAQ', faq_path %></li> <li><a href="#">Contact Us</a></li> <li><%= link_to 'My Account', account_path %></li> <li><%= link_to 'Sign Out', destroy_user_session_path, method: 'delete' %></li> <--- this is the line <% else %> <li><%= link_to 'FAQ', faq_path %></li> <li><a href="#">Contact Us</a></li> <li><%= link_to 'Sign In', new_user_session_path %></li> <li><%= link_to 'Free Trial', plans_path %></li> <% end %> </ul> </div><!-- /dl-menuwrapper --> </div> </div> </div><!-- /container --> </div> And this is the non-drop down code that works: <div class="signincontainer pull-right"> <div class="navbar-form navbar-right"> <% if user_signed_in? %> <%= link_to 'Sign out', destroy_user_session_path, class: 'btn signin-button', method: :delete %> <div class="btn signin-button usernamefont"><%= link_to current_user.full_name, account_path %></div> <% else %> ....rest of code here Updated error: ActionController::RoutingError (No route matches [GET] "/user/sign_out"): actionpack (4.0.4) lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call' actionpack (4.0.4) lib/action_dispatch/middleware/show_exceptions.rb:30:in `call' railties (4.0.4) lib/rails/rack/logger.rb:38:in `call_app' railties (4.0.4) lib/rails/rack/logger.rb:20:in `block in call' activesupport (4.0.4) lib/active_support/tagged_logging.rb:68:in `block in tagged' activesupport (4.0.4) lib/active_support/tagged_logging.rb:26:in `tagged' activesupport (4.0.4) lib/active_support/tagged_logging.rb:68:in `tagged' railties (4.0.4) lib/rails/rack/logger.rb:20:in `call' quiet_assets (1.0.2) lib/quiet_assets.rb:18:in `call_with_quiet_assets' actionpack (4.0.4) lib/action_dispatch/middleware/request_id.rb:21:in `call' rack (1.5.2) lib/rack/methodoverride.rb:21:in `call' rack (1.5.2) lib/rack/ru

    Read the article

  • Rails - Posting a Boolean (true or False) and updating the DB in the controller

    - by AnApprentice
    Hello, in my Rails 3 App, I'm posting with jQuery the following: http://0.0.0.0:3000/topics/read_updater?&topic_id=101&read=true In my controller: def read_updater current_user.topics.where(:topic_id => params[:topic_id]).update_all(:read => params[:read]) render :json => {:status => 'success' } end params[:conversation_id] works great, but params[:read] is inserting empty values in the DB, even though jQuery is posting either a true or false. Ideas? I want rails to update the DB with either true or false. Thanks

    Read the article

  • Testing methods called on yielded object

    - by Todd R
    I have the following controller test case: def test_showplain Cleaner.expect(:parse).with(@somecontent) Cleaner.any_instance.stubs(:plainversion).returns(@returnvalue) post :showplain, {:content => @somecontent} end This works fine, except that I want the "stubs(:plainversion)" to be an "expects(:plainversion)". Here's the controller code: def showplain Cleaner.parse(params[:content]) do | cleaner | @output = cleaner.plainversion end end And the Cleaner is simply: class Cleaner ### other code and methods ### def self.parse(@content) cleaner = Cleaner.new(@content) yield cleaner cleaner.close end def plainversion ### operate on @content and return ### end end Again, I can't figure out how to reliably test the "cleaner" that is made available from the "parse" method. Any suggestions?

    Read the article

  • Validates presence of each other in two associated models

    - by Sergey Alekseev
    I have the following two models: class Parent < ActiveRecord::Base has_one :child, dependent: :destroy validates :child, presence: true end class Child < ActiveRecord::Base belongs_to :parent validates :parent, presence: true end I want to create Parent object. If I do the following: Parent.create! or Factory(:parent) Exception raises: ActiveRecord::RecordInvalid: Validation failed: Child can't be blank But I can't create Child object without Parent object for the same reason - I need to create Parent object first in order to pass presence validation. As it appears I have some kind of infinite recursion here. How to solve it?

    Read the article

  • Preventing ActiveRecord save() on an instance

    - by Craig Walker
    I have an ActiveRecord model object Foo; it represents a standard database row. I want to be able to display modified versions of instances of this object. I'd like to reuse the class itself, as it already has all the hooks & aspects I'll need. (For example: I already have a view that displays the appropriate attributes). Basically I want to clone the model instance, modify some of its properties, and feed it back to the caller (view, test, etc). I do not want these attribute modifications getting back into the database. However, I do want to include the id attribute in the cloned version, as it makes dealing with the route-helpers much easier. Thus, I plan on calling ActiveRecord::Base.clone(), manually setting the ID of the cloned instance, and then making the appropriate attribute changes to the new instance. This has me worried though; one save() on the modified instance and my original data will get clobbered. So, I'm looking to lock down the new instance so that it won't hurt anything else. I'm already planning on calling freeze() (on the understanding that this prevents further modification to the object, though the documentation isn't terribly clear). However, I don't see any obvious way to prevent a save(). What would be the best approach to achieving this?

    Read the article

  • Using Nokogiri to scrape groupon deal

    - by hyngyn
    I'm following the Nokogiri railscast to write a scraper for Groupon. I keep on getting the following error when I run my rb file. traveldeal_scrape.rb:10: warning: regular expression has ']' without escape: /\[0-9 \.]+/ Flamingo Conference Resort and Spa Deal of the Day | Groupon Napa / Sonoma traveldeal_scrape.rb:9:in `block in <main>': undefined local variable or method `item' for main:Object (NameError) Here is my scrape file. require 'rubygems' require 'nokogiri' require 'open-uri' url = "http://www.groupon.com/deals/ga-flamingo-conferences-resort-spa?c=all&p=0" doc = Nokogiri::HTML(open(url)) puts doc.at_css("title").text doc.css(".deal").each do |deal| title = deal.at_css("#content//a").text price = deal.at_css("#amount").text[/\[0-9\.]+/] puts "#{title} - #{price}" puts deal.at_css(".deal")[:href] end I used the exact same rubular expression as the tutorial. I am also unsure of whether or not my CSS tags are correct. Thanks!

    Read the article

  • How can I get Hpricot to play nice with HTML5?

    - by Adam Singer
    I am using Hpricot to parse a theme file. I have noticed, however, that if I feed a valid HTML5 document into Hpricot(), it auto-closes HTML5 tags (like <section>), and messes with the DOCTYPE. Are there any extensions to Hpricot, or perhaps a flag I need to set, that will allow HTML5 documents to be parsed correctly?

    Read the article

  • Using scope, defined in parent model, inside it's child (STI pattern)

    - by Anton
    I implement a class hierarchy using STI pattern class A scope :aaa, where([someField]:[someValue]) end class B < A end The problem is that when I try to call something like: B.limit(5).aaa => SELECT "[table]".* FROM "[table]" WHERE "[table]"."type" IN ('A') AND ([someField] = [someValue]) LIMIT 5 So I am getting 5 objects of type A, which satisfies scope :aaa But I need to do the same with rows where type = "B" Is there any way to use scopes from parent, without redifinning it in childs in STI pattern? Thanks in advance EDITED I just discussed it with my frind and he showed me one important thing. A in not the root class of STI. IN fact whole hierarchy looks like class O < ActiveRecord::Base end class A < O scope ..... ..... end class B < A end maybe the reason is in hierarchy itself?...

    Read the article

  • Accessing a nested hash in a controller

    - by Magicked
    I have the following (snipped) parameters passed into my controller. Parameters: {"commit"=>"OK", "action"=>"set_incident_incident_status_id", "id"=>"1", "controller"=>"incidents", "incident"=>{"incident_status_id"=>"1"}} I know that if I want to select the incident, I can do: @incident = Incident.find(params[:id]) How do I access the "incident"={"incident_status_id"="1"}? I thought to try something like: @incident_status = IncidentStatus.find(params[:incident => :incident_status_id]) But that didn't work. I'm assuming it's just a syntax problem at this point, and I haven't found a solution yet. Any help would be much appreciated!

    Read the article

  • Using the pluralize method in a rake task

    - by Scott S.
    I know this seems silly, but I would like to call some of Rails' Text Helpers in a rake task I am setting up. (Thinks like the pluralize and cycle method: http://api.rubyonrails.org/classes/ActionView/Helpers/TextHelper.html) How would you go about making these available in a rake task, or is it not easily possible?

    Read the article

  • Having different database sorting order (default_scope) for two different views

    - by Juniper747
    In my model (pins.rb), I have two sorting orders: default_scope order: 'pins.featured DESC' #for adding featured posts to the top of a list default_scope order: 'pins.created_at DESC' #for adding the remaining posts beneath the featured posts This sorting order (above) is how I want my 'pins view' (index.html.erb) to look. Which is just a list of ALL user posts. In my 'users view' (show.html.erb) I am using the same model (pins.rb) to list only current_user pins. HOWEVER, I want to sorting order to ignore the "featured" default scope and only use the second scope: default_scope order: 'pins.created_at DESC' How can I accomplish this? I tried doing something like this: default_scope order: 'pins.featured DESC', only: :index default_scope order: 'pins.created_at DESC' But that didn't fly... UPDATE I updated my model to define a scope: scope :featy, order: 'pins.featured DESC' default_scope order: 'pins.created_at DESC' And updated my pins view to: <%= render @pins.featy %> However, now when I open my pins view, I get the error: undefined method `featy' for #<Array:0x00000100ddbc78> UPDATE 2 User.rb class User < ActiveRecord::Base attr_accessible :name, :email, :username, :password, :password_confirmation, :avatar, :password_reset_token, :password_reset_sent_at has_secure_password has_many :pins, dependent: :destroy #destroys user posts when user is destroyed # has_many :featured_pins, order: 'featured DESC', class_name: "Pin", source: :pin has_attached_file :avatar, :styles => { :medium => "300x300#", :thumb => "120x120#" } before_save { |user| user.email = user.email.downcase } before_save { |user| user.username = user.username.downcase } before_save :create_remember_token before_save :capitalize_name validates :name, presence: true, length: { maximum: 50 } VALID_EMAIL_REGEX = /\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/i VALID_USERNAME_REGEX = /^[A-Za-z0-9]+(?:[_][A-Za-z0-9]+)*$/ validates :email, presence: true, format: { with: VALID_EMAIL_REGEX }, uniqueness: { case_sensitive: false } validates :username, presence: true, format: { with: VALID_USERNAME_REGEX }, uniqueness: { case_sensitive: false } validates :password, length: { minimum: 6 }, on: :create #on create, because was causing erros on pw_reset Pin.rb class Pin < ActiveRecord::Base attr_accessible :content, :title, :privacy, :date, :dark, :bright, :fragmented, :hashtag, :emotion, :user_id, :imagesource, :imageowner, :featured belongs_to :user before_save :capitalize_title before_validation :generate_slug validates :content, presence: true, length: { maximum: 8000 } validates :title, presence: true, length: { maximum: 24 } validates :imagesource, presence: { message: "Please search and choose an image" }, length: { maximum: 255 } validates_inclusion_of :privacy, :in => [true, false] validates :slug, uniqueness: true, presence: true, exclusion: {in: %w[signup signin signout home info privacy]} # for sorting featured and newest posts first default_scope order: 'pins.created_at DESC' scope :featured_order, order: 'pins.featured DESC' def to_param slug # or "#{id}-#{name}".parameterize end def generate_slug # makes the url slug address bar freindly self.slug ||= loop do random_token = Digest::MD5.hexdigest(Time.zone.now.to_s + title)[0..9]+"-"+"#{title}".parameterize break random_token unless Pin.where(slug: random_token).exists? end end protected def capitalize_title self.title = title.split.map(&:capitalize).join(' ') end end users_controller.rb class UsersController < ApplicationController before_filter :signed_in_user, only: [:edit, :update, :show] before_filter :correct_user, only: [:edit, :update, :show] before_filter :admin_user, only: :destroy def index if !current_user.admin? redirect_to root_path end end def menu @user = current_user end def show @user = User.find(params[:id]) @pins = @user.pins current_user.touch(:last_log_in) #sets the last log in time if [email protected]? render 'pages/info/' end end def new @user = User.new end pins_controller.rb class PinsController < ApplicationController before_filter :signed_in_user, except: [:show] # GET /pins, GET /pins.json def index #Live Feed @pins = Pin.all @featured_pins = Pin.featured_order respond_to do |format| format.html # index.html.erb format.json { render json: @pins } end end # GET /pins, GET /pins.json def show #single Pin View @pin = Pin.find_by_slug!(params[:id]) require 'uri' #this gets the photo's id from the stored uri @image_id = URI(@pin.imagesource).path.split('/').second if @pin.privacy == true #check for private pins if signed_in? if @pin.user_id == current_user.id respond_to do |format| format.html # show.html.erb format.json { render json: @pin } end else redirect_to home_path, notice: "Prohibited 1" end else redirect_to home_path, notice: "Prohibited 2" end else respond_to do |format| format.html # show.html.erb format.json { render json: @pin } end end end # GET /pins, GET /pins.json def new @pin = current_user.pins.new respond_to do |format| format.html # new.html.erb format.json { render json: @pin } end end # GET /pins/1/edit def edit @pin = current_user.pins.find_by_slug!(params[:id]) end Finally, on my index.html.erb I have: <%= render @featured_pins %>

    Read the article

  • Help me write a nicer SQL query in Rails

    - by Sainath Mallidi
    Hi, I am trying to write an SQL query to update some of the attributes that are regularly pulled from source. the output will be a text file with the following fields: author, title, date, popularity I have two tables to update one is the author information and the other is popularity table. And the Author Active Record object has one popularity. Currently I'm doing it like this.\ arr.each { |x| x = x.split(" ") results = Author.find_by_sql("SELECT authors.id FROM authors, priorities WHERE authors.id=popularity.authors_id AND authors.author = x[0]") results[0].popularity.update_attribute("popularity", x[3]) I need two tables because the popularity keeps changing, and I need only the top 1000 popular ones, but I still need to keep the previously popular ones also. Is there any nicer way to do this, instead of one query for every new object. Thanks.

    Read the article

  • syntax error, unexpected ',', expecting ')' RoR

    - by McDoku
    I am trying to get a collection select from an another model and I keep getting the above error. Looked everywhere, got rails casts but nothing makes sense. _form.rb <%= f.label :city %><br /> <%= f.collection_select (:share ,:city_id, City.all , :id, :name ) %> It highlights 'form' on the error report <h1>New share</h1> <%= render 'form' %> <%= link_to 'Back', shares_path %> Here are my models... class Share include Mongoid::Document field :name, type: String field :type, type: String field :summary, type: String field :description, type: String field :city, type: String embedded_in :city has_many :category end class City include Mongoid::Document embedded_in :share field :name, type: String field :country, type: String attr_accessible :name, :city_id, :id end Searched everywhere and I cannot figure it out. It must be something silly.

    Read the article

  • access properties of current model in has_many declaration

    - by seth.vargo
    Hello, I didn't exactly know how to pose this question other than through example... I have a class we will call Foo. Foo :has_many Bar. Foo has a boolean attribute called randomize that determines the order of the the Bars in the :has_many relationship: class CreateFoo < ActiveRecord::Migration def self.up create_table :foos do |t| t.string :name t.boolean :randomize, :default => false end end end   class CreateBar < ActiveRecord::Migration def self.up create_table :bars do |t| t.string :name t.references :foo end end end   class Bar < ActiveRecord::Base belongs_to :foo end   class Foo < ActiveRecord::Base # this is the line that doesn't work has_many :bars, :order => self.randomize ? 'RAND()' : 'id' end How do I access properties of self in the has_many declaration? Things I've tried and failed: creating a method of Foo that returns the correct string creating a lambda function crying Is this possible? UPDATE The problem seems to be that the class in :has_many ISN'T of type Foo: undefined method `randomize' for #<Class:0x1076fbf78> is one of the errors I get. Note that its a general Class, not a Foo object... Why??

    Read the article

  • How do I Order on common attribute of two models in the DB?

    - by Will
    If i have two tables Books, CDs with corresponding models. I want to display to the user a list of books and CDs. I also want to be able to sort this list on common attributes (release date, genre, price, etc.). I also have basic filtering on the common attributes. The list will be large so I will be using pagination in manage the load. items = [] items << CD.all(:limit => 20, :page => params[:page], :order => "genre ASC") items << Book.all(:limit => 20, :page => params[:page], :order => "genre ASC") re_sort(items,"genre ASC") Right now I am doing two queries concatenating them and then sorting them. This is very inefficient. Also this breaks down when I use paging and filtering. If I am on page 2 of how do I know what page of each table individual table I am really on? There is no way to determine this information without getting all items from each table. I have though that if I create a new Class called items that has a one to one relationship with either a Book or CD and do something like Item.all(:limit => 20, :page => params[:page], :include => [:books, :cds], :order => "genre ASC") However this gives back an ambiguous error. So can only be refined as Item.all(:limit => 20, :page => params[:page], :include => [:books, :cds], :order => "books.genre ASC") And does not interleave the books and CDs in a way that I want. Any suggestions.

    Read the article

  • Problems with validates_inclusion_of, acts_as_tree and rspec

    - by Jens Fahnenbruck
    I have problems to get rspec running properly to test validates_inclusion_of my migration looks like this: class CreateCategories < ActiveRecord::Migration def self.up create_table :categories do |t| t.string :name t.integer :parent_id t.timestamps end end def self.down drop_table :categories end end my model looks like this: class Category < ActiveRecord::Base acts_as_tree validates_presence_of :name validates_uniqueness_of :name validates_inclusion_of :parent_id, :in => Category.all.map(&:id), :unless => Proc.new { |c| c.parent_id.blank? } end my factories: Factory.define :category do |c| c.name "Category One" end Factory.define :category_2, :class => Category do |c| c.name "Category Two" end my model spec looks like this: require 'spec_helper' describe Category do before(:each) do @valid_attributes = { :name => "Category" } end it "should create a new instance given valid attributes" do Category.create!(@valid_attributes) end it "should have a name and it shouldn't be empty" do c = Category.new :name => nil c.should be_invalid c.name = "" c.should be_invalid end it "should not create a duplicate names" do Category.create!(@valid_attributes) Category.new(@valid_attributes).should be_invalid end it "should not save with invalid parent" do parent = Factory(:category) child = Category.new @valid_attributes child.parent_id = parent.id + 100 child.should be_invalid end it "should save with valid parent" do child = Factory.build(:category_2) child.parent = Factory(:category) # FIXME: make it pass, it works on cosole, but I don't know why the test is failing child.should be_valid end end I get the following error: 'Category should save with valid parent' FAILED Expected #<Category id: nil, name: "Category Two", parent_id: 5, created_at: nil, updated_at: nil to be valid, but it was not Errors: Parent is missing On console everything seems to be fine and work as expected: c1 = Category.new :name => "Parent Category" c1.valid? #=> true c1.save #=> true c1.id #=> 1 c2 = Category.new :name => "Child Category" c2.valid? #=> true c2.parent_id = 100 c2.valid? #=> false c2.parent_id = 1 c2.valid? #=> true I'm running rails 2.3.5, rspec 1.3.0 and rspec-rails 1.3.2 Anybody, any idea?

    Read the article

< Previous Page | 108 109 110 111 112 113 114 115 116 117 118 119  | Next Page >