Search Results

Search found 7502 results on 301 pages for 'rails activerecord'.

Page 118/301 | < Previous Page | 114 115 116 117 118 119 120 121 122 123 124 125  | Next Page >

  • Rails - Seeking a Dry authorization method compatible with various nested resources

    - by adam
    Consensus is you shouldn't nest resources deeper than 1 level. So if I have 3 models like this (below is just a hypothetical situation) User has_many Houses has_many Tenants and to abide by the above i do map.resources :users, :has_many => :houses map.resorces :houses, :has_many => :tenants Now I want the user to be able edit both their houses and their tenants details but I want to prevent them from trying to edit another users houses and tenants by forging the user_id part of the urls. So I create a before_filter like this def prevent_user_acting_as_other_user if User.find_by_id(params[:user_id]) != current_user() @current_user_session.destroy flash[:error] = "Stop screwing around wiseguy" redirect_to login_url() return end end for houses that's easy because the user_id is passed via edit_user_house_path(@user, @house) but in the tenents case tenant house_tenent_path(@house) no user id is passed. But I can get the user id by doing @house.user.id but then id have to change the code above to this. def prevent_user_acting_as_other_user if params[:user_id] @user = User.find(params[:user_id] elsif params[:house_id] @user = House.find(params[:house_id]).user end if @user != current_user() #kick em out end end It does the job, but I'm wondering if there is a more elegant way. Every time I add a new resource that needs protecting from user forgery Ill have to keep adding conditionals. I don't think there will be many cases but would like to know a better approach if one exists.

    Read the article

  • rails add :prompt to form_tag fields?

    - by bob
    Hey guys, My question is simple. Can I add either of the blow :prompt => "Any" :include_blank => true to a form in form_tag. Here is an example. I would like to add :prompt to the select_tag :condition and select_tag :category fields and am having trouble. <ul id="homepage_searchbar"> <% form_tag junklists_path, :method => :get do %> <li> <%= image_tag('search_icon.png', :id => 'main_search_icon' ) %> </li> <li> <%= text_field_tag :search, "I'm looking for junk called...", :id => "main_field" %> </li> <li> <%= select_tag :condition, options_for_select(Condition.all.collect{|condition| [condition.name, condition.id]}) %> </li> <li> <%= select_tag :category, options_for_select(nested_set_options(Category) {|i| "#{'-' * i.level} #{i.name}"})%> </li> <li> <%= submit_tag "Go!", :name => 'main_submit', :id => "main_submit" %> </li> <% end %> </div> If I can't do it the way I want, how can I add a field at the top of the select boxes that has the text "Any" but has no value when the form is submitted? Thanks in advance!

    Read the article

  • Rails: Accessing /lib Modules from Controller

    - by Dex
    I have a Module called /lib/string_parser.rb. It looks like: module StringParser def wrap_lines(input, chars) ... end #make available to views def self.included(base) base.send :helper_method, :my_method_for_views if base.respond_to? :helper_method end end I'm trying to call wrap_lines from the create method of my controller but no matter what I do, I keep getting NoMethodErrors for an undefined method.

    Read the article

  • rails fragment cache store

    - by ash34
    Hi, I am unable to figure out where my cached fragments are being stored. What is the default location for fragment caching. Cached fragment hit: views/listed_products (0.1ms) I cannot find anything in the rails_root/public or rails_root/tmp/cache dirs thanks, ash

    Read the article

  • rails Rake and mysql ssh port forwarding.

    - by rube_noob
    Hello, I need to create a rake task to do some active record operations via a ssh tunnel. The rake task is run on a remote windows machine so I would like to keep things in ruby. This is my latest attempt. desc "Syncronizes the tablets DB with the Server" task(:sync => :environment) do require 'rubygems' require 'net/ssh' begin Thread.abort_on_exception = true tunnel_thread = Thread.new do Thread.current[:ready] = false hostname = 'host' username = 'tunneluser' Net::SSH.start(hostname, username) do|ssh| ssh.forward.local(3333, "mysqlhost.com", 3306) Thread.current[:ready] = true puts "ready thread" ssh.loop(0) { true } end end until tunnel_thread[:ready] == true do end puts "tunnel ready" Importer.sync rescue StandardError => e puts "The Database Sync Failed." end end The task seems to hang at "tunnel ready" and never attempts the sync. I have had success when running first a rake task to create the tunnel and then running the rake sync in a different terminal. I want to combine these however so that if there is an error with the tunnel it will not attempt the sync. This is my first time using ruby Threads and Net::SSH forwarding so I am not sure what is the issue here. Any Ideas!? Thanks

    Read the article

  • Nokogiri parsing Rackspace return using XPath in Rails

    - by Schroedinger
    Hey guys, I'm using Nokogiri to parse a return from the Rackspace API so I'm using their sample code to response = server.get '/customers/'[email protected]_id.to_s+'/domains/', server.xml_format doc = Nokogiri::XML::parse response.body puts "xpath values" doc.xpath("//name").each do |node| puts node.text end As my code to use Nokogiri to return the nodelist of nodes of the element for some reason I seem to have missed something obvious and I just for the life of me cannot get it to parse the list of nodes and return them to me, is there something simple I can do to fix to have it return the list of nodes? Cheers

    Read the article

  • rails backgroundjob running jobs in parallel?

    - by Damir Horvat
    I'm very happy with By so far, only I have this one issue: When one process takes 1 or 2 hours to complete, all other jobs in the queue seem to wait for that one job to finish. Worse still is when uploading to a server which time's out regularly. My question: is Bj running jobs in parallel or one after another? Thank you, Damir

    Read the article

  • functional test for rails controller private method

    - by mohit
    I have a private method in my controller. which is used for some database update. this method i am calling from another controller method. and it works fine. But when i am trying to write a test case for that method then It is tripping on accessing (session variable and params) in my functional all other methods are working fine the problem is only with private method? In my setup method in functional test, I am setting session also.?

    Read the article

  • Apache/Rails/Passenger directory URLs that don't end in '/' fail to 404.

    - by Portamento
    I'm using Apache with passenger to run a rails app. In my rails app, I have some static content in subdirectories of the public directory. Each subdirectory has an index.html in it. So, inside the public directory, I have a subdir called 'b' and inside it, is an index.html. So it's like this: /public/b/index.html I have links to these pages, of the form: http://a.com/b If I do this in my regular non-rails web directory, Apache correctly rewrites this URL to be http://a.com/b/ which then, subsequently shows the index.html. It's only when accessing my rails app that it doesn't work. In fact, if I turn off passenger mod... so it just accesses my rails app like a regular document root, it works correctly also. What the heck do I need to do to get this to work properly with passenger? Again, it works fine in apache itself when passenger is not involved. I am running passenger 2.1.3. I have another server running passenger 2.0 that doesn't seem to have this problem, but I don't see anything different in the config other than the different versions of passenger itself. HELP! Been working on this for two days solid with no improvement!

    Read the article

  • AJAX in Rails - doing simple looping to update information when available

    - by Acidburn2k
    I am trying to get put out a simple site, which would pool the database every few seconds and update the information on the page dynamicly, when theres something new inserted. I am farily new to ruby, but I understand the whole concept of RJS, link_to_function and soforth. The question is, what is the best way how to implement some kind of simple loop, which would run after the page is loaded and update the DOM if there is something new to display. Thanks in advance for any tips!

    Read the article

  • quering an external oracle db in rails application

    - by railscoder
    I have a website which useses a mysql database for its whole operation . But for a new requirement i need to query a external oracle database( used by other component) and compile a list of items and display in a page in the website. How is it possible to connect to a external database just for rendering a single page. And is it possible to cache the queried result for say 1 month before invalidating the cache and get the updated list of items. i dont want query the external oracle db for each request.

    Read the article

  • Rails address and routes?

    - by Danny McClelland
    Hi Everyone, I have created a custom action within one of my controlers as follows: # GET /kases/discharge/1 # GET /kases/discharge/1.xml def discharge @kase = Kase.find_by_jobno(params[:id]) respond_to do |format| format.html { } # discharge.html.erb format.xml { render :xml => @kase } format.pdf { render :layout => false } prawnto :prawn => { :background => "#{RAILS_ROOT}/public/images/discharge.png", :left_margin => 0, :right_margin => 0, :top_margin => 0, :bottom_margin => 0, :page_size => 'A4' } end end For the edit actions etc the link would be link_to edit_kase_path(@kase) Is there a way of linking to the discharge action already, or do I have to make a custom route? Thanks, Danny

    Read the article

  • Rails acts_as_taggable_on grouped alphabetically?

    - by Ray Dookie
    Having sorted the tag_counts hash via the following code: sorted_tags = Contact.tag_counts.sort{ |x,y| x.name.downcase <= y.name.downcase } what is the easiest/most efficient way to display the tags in my view grouped by letters? i.e A - "Alpha", "Apple", "Aza" B - "Beta", "Bonkers" . . . Z - "Zeta", "Zimmer" Any ideas?

    Read the article

  • Rails problem find by sql

    - by Totty
    I have this query and I have an error: images = Image.find_by_sql('PREPARE stmt FROM \' SELECT * FROM images AS i WHERE i.on_id = 1 AND i.on_type = "profile" ORDER BY i.updated_at LIMIT ?, 6\ '; SET @lower_limit := ((5 DIV 6) * 6); EXECUTE stmt USING @lower_limit;') Mysql::Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET @lower_limit := ((5 DIV 6) * 6); EXECUTE stmt USING @lower_limit' at line 1: PREPARE stmt FROM ' SELECT * FROM images AS i WHERE i.on_id = 1 AND i.on_type = "profile" ORDER BY i.updated_at LIMIT ?, 6'; SET @lower_limit := ((5 DIV 6) * 6); EXECUTE stmt USING @lower_limit;

    Read the article

  • Rails app + gmail smtp + heroku hosting + godaddy domain

    - by sagivo
    i'm trying to define a way to send emails using gmail. it all works fine on localhost but when i deploy to heroku nothing happens. i guess it has something to do with GoDaddy MX records? here is what i tried: ActionMailer::Base.smtp_settings = { :address => "smtp.gmail.com", :port => 587, :domain => "gmail.com", :user_name => "my_user", :password => "my_pass", :authentication => "plain", :enable_starttls_auto => true } i can't change the GoDaddy MX records since i'm forwording some emails from there to my Gmail account. am i missing something? EDIT- it turns out the problem was with my Gmail account. all i needed to turn off the 2-step verification. Problem solved.

    Read the article

  • Writing a simple incrementing counter in rails

    - by Trip
    For every Card, I would like to attach a special number to them that increments by one. I assume I can do this all in the controller. def create @card = Card.new(params[:card]) @card.SpecNum = @card.SpecNum ++ ... end Or. I can be blatantly retarded. And maybe the best bet is to add an auto-incremement table to mysql. The problem is the number has to start at a specific number, 1020. Any ideas?

    Read the article

  • rails, rest, render different action with responds to

    - by Sam
    Maybe my logic is not restful or know if this is how you would do it but this is what I am trying to do. I'm getting a category inside a category controller and then once I get that category I want to return to an index page in a different controller but keep that @category and the Category.busineses. Before rest I would have just done this: render :controller = "businesses" and it would have rendered the view of the index action in that controller. now in my respond_to block I have this format.html {redirect_to(business_path)} # index.html.erb format.xml { render :xml => @businesses } but of course with a render it looses the instance variable and starts with a new action. So what I want to do is render the action instead of redirecting to that action. is this possible?

    Read the article

  • Ruby on Rails: attr_accessor for submodels

    - by williamjones
    I'm working with some models where a lot of a given model's key attributes are actually stored in a submodel. Example: class WikiArticle has_many :revisions has_one :current_revision, :class_name => "Revision", :order => "created_at DESC" end class Revision has_one :wiki_article end The Revision class has a ton of database fields, and the WikiArticle has very few. However, I often have to access a Revision's fields from the context of a WikiArticle. The most important case of this is probably on creating an article. I've been doing that with lots of methods that look like this, one for each field: def description if @description @description elsif current_revision current_revision.description else "" end end def description=(string) @description = string end And then on my save, I save @description into a new revision. This whole thing reminds me a lot of attr_accessor, only it doesn't seem like I can get attr_accessor to do what I need. How can I define an attr_submodel_accessor such that I could just give field names and have it automatically create all those methods the way attr_accessor does?

    Read the article

  • rendering specific fields with Rails

    - by Tam
    Hi, If I have an object say @user and I want to render only certain fields in it say first_name and last_name(I'm using AMF) render :amf => @user how do I do that? I know I can use :select when doing the 'find' but I need to use the other field at the server side but don't want to send them with AMF to the client side and I don't want to do a second 'find' Thanks, Tam

    Read the article

  • Weird Rails URL issue when rendering a new action

    - by Tony
    I am rendering a new action but somehow getting the "index" URL. To be more specific, my create action looks like this: class ListingsController < ApplicationController def create @listing = Listing.new(params[:listing]) @listing.user = @current_user if @listing.save redirect_to @listing else flash[:error] = "There were errors" render :action => "new" end end end When there are errors, I get the "new" action but my URL is the index URL - http://domain.com/listings Anyone know why this would happen? My routes file is fairly standard: map.connect 'listings/send_message', :controller => 'listings', :action => 'send_message' map.resources :listings map.root :controller => "listings" map.connect ':controller/:action/:id' map.connect ':controller/:action/:id.:format'

    Read the article

  • How to store private pictures and videos in Ruby on Rails

    - by TK
    Here's a story: User A should be able to upload an image. User A should be able to set a privacy. ("Public" or "Private"). User B should not be able to access "Private" images of User A. I'm planning to user Paperclip for dealing with uploads. If I store the images under "RAILS_ROOT/public/images", anyone who could guess the name of the files might access the files. (e.g., accessing http://example.com/public/images/uploads/john/family.png ) I need to show the images using img tags, so I cannot place a file except public. How can I ensure that images of a user or group is not accessible by others?

    Read the article

  • Multiple forms using Rails & jQuery & AJAX

    - by biggie8199
    I have multiple coupons on a page and I'm trying to get comments to work on each coupon. So for each coupon i have a comments form. Im using jQuery + Ajax to accomplish this. Here's what my code looks like. Coupon Page <p>Comments:</p> <% form_for(@comment) do |f| %> <%= f.label :body %><br /><%= f.text_field :body, :size => "24" %> <%= f.hidden_field :coupon_id, :value => coupon.id %> <%= f.submit "Save" %> <% end %> Application.js jQuery.ajaxSetup({ 'beforeSend': function(xhr) {xhr.setRequestHeader("Accept", "text/javascript")} }) jQuery.fn.submitWithAjax = function() { this.submit(function() { $.post(this.action, $(this).serialize(), null, "script"); return false; }) return this; }; $(document).ready(function() { $("#new_comment").submitWithAjax(); }) I tried changing the jQuery selector to a class $(".new_comment").submitWithAjax(); Thinking that would work, now all the submit buttons work, however it posts only the first form on the page. What can I change to make it so ajax submits the correct form and not the first one?

    Read the article

< Previous Page | 114 115 116 117 118 119 120 121 122 123 124 125  | Next Page >