[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x

Ruby

Ruby is an open-source dynamic object-oriented interpreted language that supports multiple programming frameworks including functional, object oriented and imperative. It also has a dynamic type system and automatic memory management. Ruby focuses on simplicity and productivity. Ruby's market share spiked due to Ruby on Rails, a model-view-controller (MVC) framework for building web applications.

Share tech news, updates, or what's on your mind.

Sign up to Post

Hi. I have knocked out a Ruby On Rails website that lists HR documents; the plan being for a user to click on a button next to the document in the list and open the pdf with the HR policy.
Rails being Rails I have the list with 'Show' and 'Edit' buttons...but need a 'Display pdf' button, too. The pdfs are on the server, each named with the number of the primary key in the table (thus pdf /usr/var/www/html/docs/123456.pdf refers in the table to  id 123456). Does anybody know how to set up the code in the controller and view (index.html.erb) that can facilitate this, please?
0
CompTIA Security+
LVL 12
CompTIA Security+

Learn the essential functions of CompTIA Security+, which establishes the core knowledge required of any cybersecurity role and leads professionals into intermediate-level cybersecurity jobs.

I updated the patches on a Ubuntu box running gitlab-ce.  Now it's refusing to start with the following error in unicorn_stderr.log

F, [2018-10-12T21:47:15.632756 #3235] FATAL -- : error adding listener addr=127.0.0.1:8080
/opt/gitlab/embedded/service/gem/ruby/2.1.0/gems/unicorn-4.9.0/lib/unicorn/socket_helper.rb:185:in `bind': Cannot assign requested address - bind(2) for 127.0.0.1:8080 (Errno::EADDRNOTAVAIL)
      from /opt/gitlab/embedded/service/gem/ruby/2.1.0/gems/unicorn-4.9.0/lib/unicorn/socket_helper.rb:185:in `new_tcp_server'
      from /opt/gitlab/embedded/service/gem/ruby/2.1.0/gems/unicorn-4.9.0/lib/unicorn/socket_helper.rb:165:in `bind_listen'
      from /opt/gitlab/embedded/service/gem/ruby/2.1.0/gems/unicorn-4.9.0/lib/unicorn/http_server.rb:242:in `listen'
      from /opt/gitlab/embedded/service/gem/ruby/2.1.0/gems/unicorn-4.9.0/lib/unicorn/http_server.rb:813:in `block in bind_new_listeners!'
      from /opt/gitlab/embedded/service/gem/ruby/2.1.0/gems/unicorn-4.9.0/lib/unicorn/http_server.rb:813:in `each'
      from /opt/gitlab/embedded/service/gem/ruby/2.1.0/gems/unicorn-4.9.0/lib/unicorn/http_server.rb:813:in `bind_new_listeners!'
      from /opt/gitlab/embedded/service/gem/ruby/2.1.0/gems/unicorn-4.9.0/lib/unicorn/http_server.rb:138:in `start'
      from /opt/gitlab/embedded/service/gem/ruby/2.1.0/gems/unicorn-4.9.0/bin/unicorn:126:in `<top (required)>'
      from /opt/gitlab/embedded/service/gem/ruby/2.1.0/bin/unicorn:23:in `load'
      from …
0
i have a json file, which contains KV pairs like below.

{
"app1_ds1_ds_jndi": "value1",
"app1_ds1_ds_url": "value2",
"app1_ds1_ds_useri": "value3",
"app1_ds1_ds_pwd": "value4",


"app1_ds2_ds_jndi": "value5",
"app1_ds2_ds_url": "value6",
"app1_ds2_ds_user": "value7",
"app1_ds2_ds_pwd": "value8",


"app2_ds1_ds_jndi": "value9",
"app2_ds1_ds_url": "value10",
"app2_ds1_ds_user": "value11",
"app2_ds1_ds_pwd": "value12",

}


I want to parse the above file to grep for all app1 datasources, ignoring other apps like app2, app3 ..etc., and construct an array of hashes in ruby like below.




[{jndiname: "value1",  url_name:"value2" user_name: "value3", Password:"value4"},
{jndiname: "value5",  url_name:"value6" user_name: "value7", Password:"value8"}
]
0
How to connect on database phpmyadmin in ruby on rails? I already do rake db:migrate but it doesn't connect on my phpmyadmin. How do i do that?
0
Hello,
Im trying to translate this code from https://securionpay.com/docs/api#checkout-request-sign.
EXAMPLE SIGNING


export checkout_request='{"charge":{"amount":499,"currency":"EUR"}}'
export signature=`echo -n "$checkout_request" | openssl dgst -sha256 -hmac 'pr_test_tXHm9qV9qV9bjIRHcQr9PLPa' | sed 's/^.* //'`
echo -n "$signature|$checkout_request" | base64
        

EXAMPLE SIGNED CHECKOUT REQUEST


Y2Y5Y2UyZDgzMzFjNTMxZjgzODlhNjE2YTE4Zjk1NzhjMTM0Yjc4NGRhYjVjYjdlNGI1OTY0ZTc3OTBmMTczY3x7ImNoYXJnZSI6eyJhbW91bnQiOjQ5OSwiY3VycmVuY3kiOiJFVVIifX0=
				

Open in new window


to Ruby on Rails

I ended with

       
 checkout_request='{"charge":{"amount":5,"currency":"EUR","capture":true}}'
 secret_key = 'sk_test'
 @signature = Base64.urlsafe_encode64(OpenSSL::HMAC.hexdigest('sha256', checkout_request, secret_key) + "|" + checkout_request)

Open in new window


which isn't valid and its not exacly translation of the script.

When i test shell version with my secret key it works.
I tried Base64.urlsafe_encode64, encode64, strict_encode65, I tried digest instead of hexdigest. All kinds of way because I desperatly can't make it work. I think its about checkout_request data because it translates to this
 
2.5.0 :001 > '{"charge":{"amount":5,"currency":"EUR","capture":true}}'
 => "{\"charge\":{\"amount\":5,\"currency\":\"EUR\",\"capture\":true}}" 

Open in new window

and therefore signature is created with `\` before quote

question on stackoverflow: https://stackoverflow.com/questions/51506282/json-and-generating-signature
0
Hello,

Beautiful people of Experts-Exchange,

I have an app built on ruby on rails running on a Linode server. The app has iOS and android versions available as code in Bitbucket for source control.

The app uses cloud hosting on cloudspace.com and rackspace.com.

When I send text from one end to another for 2 registered users; it gets delivered. But when I send pictures; there is an image failure with only placeholder shown in receiver.

Log shows

OpenSSL::SSL::SSLError (SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed):
  app/controllers/api/v1/users_controller.rb:16:in `auth_cloud'

The bucket has a users_controller.rb which (on branch 'auth_cloud') in api_server/app/controllers/api/v1 that looks like -

def auth_cloud
    uri          =  URI 'https://identity.api.rackspacecloud.com/v2.0/tokens'
    data         = { 'auth' => { "RAX-KSKEY:apiKeyCredentials" => { 'username' => '***' , 'apiKey' => '***' }} }
    json_headers = {"Content-Type" => "application/json", "Accept" => "application/json"}
    http   = Net::HTTP.new uri.host, 443
    http.use_ssl = true
    res    = http.post uri.path, data.to_json, json_headers
    if res                                                                                               //This is line 16
      data = JSON.parse res.body
      render json: { response: data['access']['token']['id'] }
    else
      render json: { error: 'could not auth to rackspace'…
0
im getting this error message in my ruby on rails blog app and i have no idea why

this is my controller file:

class PostsController < ApplicationController
  def index
    @posts=Post.all.order("created_at DESC")
  end

  def new
    @post=Post.new
  end

  def show
    @post=Post.find(params[:id])
  end

  def create
    @post=Post.new(post_params)
    if @post.save
      redirect_to @post
    else
      render "new"
    end
  end

  def edit
    @post=Post.find(params[:id])
  end

  def update
    @post=Post.find(params[:id])
    if @post.update(params[:post].permit(:title, :body))
      redirect_to @post
    else
      render "edit"
    end
  end

  def destroy
    @post=Post.find(params[:id])
    @post.destroy
    redirect_to posts_path
  end

  private

  def post_params
    params.require(:post).permit(:title, :body)
  end

end

Open in new window


and this is my edit file: (i get the error when trying to delete a post and the link to the destroy path is on my edit page)

<font color="#BD004B">
    <h1 class="smallBorder">Edit Post</h1>
</font>
<br/>
<hr size="10" width="auto" color="#BD004B">

<%=render "form"%>

<ul>
  <li>
    <%=link_to "Delete", posts_path(@post), method: :destroy, data:{confirm:"Are you sure you want to delete this post?"}%>
  </li>
</ul>

Open in new window

0
Hi All,

I have an requirement to convert the .webarchive file into xml and vice-versa.
Can you please provide any reference links for scripts or tool which does this.

Thanks,
Shailesh
0
0
Hello, I see below script starting like

require 'MonitoringScript'
class CheckSnmp < MonitoringScript

Open in new window


I am wondering what is MonitoringScript ? is it gem? and what below does?

class CheckSnmp < MonitoringScript

Open in new window


Really appreciate any help and guidance.
0
Become a Certified Penetration Testing Engineer
LVL 12
Become a Certified Penetration Testing Engineer

This CPTE Certified Penetration Testing Engineer course covers everything you need to know about becoming a Certified Penetration Testing Engineer. Career Path: Professional roles include Ethical Hackers, Security Consultants, System Administrators, and Chief Security Officers.

A traveller searches for trips from Bern to Berlin on Dec 25, 2013, from 8am (one-way).
A list of the 20 first results returned by a tool is given in the attached ex3-data.json file.

Tips: most fields are self-explanatory, while some may need explanation:
1. boo_return is true for a return trip, false otherwise
2. workTime_sec is the duration that the traveler can work during that part of the trip in seconds.
3. duration_out_sec is the duration of the corresponding outbound part of the trip, in seconds. For return trip, if applicable, there will be a similar field duration_in_sec for the duration of the inbound trip part.

Goals
1. Propose a solution to rank the list of results provided in the attached file.
2. Output the list of ranked results to a file named ex3-output.json.
   Each result must have two additional properties “rank” and “score”, respectively storing the final rank and the score of the trip (If applicable).

========================================
ex3-data.txt
0
How difficult is it for someone to make an AI interface that can be used on my computer, that can access anything from google maps when asking where something is located (like siri) all the way to being able to scan a hard drive for the contents held within it? I work for this small company and all we do is use google maps and take old hard drives and scan them for their contents, upon request by customer, and retrieve data deleted, lost, or just unreachable due to computer malfunction. I want to see if there is an easier way to do this, by using an AI to do all the hard work, and all we have to do is tell it to scan the drive and collect the lost data and store it into either a zip file or something as such. Please let me know thoughts. Am also flexible, doesn't have to be in ruby, but a lot of things we do, we use ruby based programs that's why I'm curious if its possible.
0
Thank you for watching.
I'm trying to create a custom filter on ActiveAdmin.
I tried to find a solution with referencing online articles.
But, I couldn't. Plese, help me.

There are two models called PointPayment and Contract.

PointPayment
# Table name: point_payments
#
#  id           :integer          not null, primary key
#  user_id      :integer
#  contract_id  :integer
#  amount       :float(24)
#  created_at   :datetime         not null
#  updated_at   :datetime         not null
#  state        :integer          default(0)
#  payment_type :integer          default(0)

class Contract < ActiveRecord::Base
  has_many :point_payments, dependent: :destroy
end

Contract
# Table name: contracts
#
#  id                         :integer          not null, primary key
#  client_id                  :integer
#  advisor_id                 :integer

class PointPayment < ActiveRecord::Base
  belongs_to :contract
end

Open in new window


I'd like to filter Contract with "payment_type."
But, Contract model hasn't payment_type.
So, I have to filter records of PointPayment model with payment_type at first and pick "contract_id" up from them.
And then, I filter Contract model records with the contract_ids.

The payment_type has four types 0 to 3.
But, I'll only use three types ( 1 to 3 ) for filtering.

Now, I wrote below codes. But, It doesn't work.
I'm stuck. I don't even know how I should search.

models/contract.rb
class Contract < ActiveRecord::Base
  scope :payment_type_one, -> { PointPayment.find_by(payment_type: 1) }
  scope :payment_type_two, -> { PointPayment.find_by(payment_type: 2) }
  scope :payment_type_three, -> { PointPayment.find_by(payment_type: 3) }

  scope :payment_types, lambda { |payment_types|
    case payment_types
    when 2
      pt = payment_type_one
      Contract.id(pt.contract_id)
    when 3
      pt = payment_type_two
      Contract.id(pt.contract_id)
    when 4
      pt = payment_type_three
      Contract.id(pt.contract_id)
    end
  }

  def self.ransackable_scopes(_auth_object = nil)
    %i(payment_types)
  end

end

Open in new window


adminn/contract.rb
ActiveAdmin.register Contract do
  filter :payment_types, as: :select, collection: proc { [%w(Type1 2), %w(Type2 3), %w(Type3 4)] }
end

Open in new window

0
Hi All,

I have decent powershell skills, I now want to learn either Ruby or Python , which language will you recommend  and which will be the easiest for someone from a powershell background?

Also do any know if if chef configuration management support python?

thank you in advance
0
I have inherited a cookbook from another developer and when I run "berks install" I get the following error output.

{dir removed}/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/solve-3.1.0/lib/solve/ruby_solver.rb:80:in `block in resolve': undefined method `name' for nil:NilClass (NoMethodError)
        from /{dir removed}/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/solve-3.1.0/lib/solve/ruby_solver.rb:79:in `each'
        from /{dir removed}/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/solve-3.1.0/lib/solve/ruby_solver.rb:79:in `inject'
        from /{dir removed}/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/solve-3.1.0/lib/solve/ruby_solver.rb:79:in `resolve'
        from /{dir removed}/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/solve-3.1.0/lib/solve.rb:64:in `it!'
        from /{dir removed}/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/berkshelf-5.6.4/lib/berkshelf/resolver.rb:78:in `resolve'
        from /{dir removed}/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/berkshelf-5.6.4/lib/berkshelf/installer.rb:176:in `install_from_universe'
        from /{dir removed}/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/berkshelf-5.6.4/lib/berkshelf/installer.rb:40:in `run'
        from /{dir removed}/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/berkshelf-5.6.4/lib/berkshelf/berksfile.rb:422:in `install'
        from /{dir removed}/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/berkshelf-5.6.4/lib/berkshelf/cli.rb:143:in `install'
        from /{dir …
0
this script pick up a file and steps through it, and then picks up another file and matches the item number to merge the file and i getting this error, and I do not know why ?

here is the code where the file is blowing up with the following errors repeatedly.

<Error>
substr outside of string at ./parseOsc.pl line 272, <PLUS> line 745800.
substr outside of string at ./parseOsc.pl line 273, <PLUS> line 745800.
Use of uninitialized value $bo_plus in substitution (s///) at ./parseOsc.pl line 283, <PLUS> line 745800.
Use of uninitialized value $res_plus in substitution (s///) at ./parseOsc.pl line 284, <PLUS> line 745800.
Use of uninitialized value $res_plus in string eq at ./parseOsc.pl line 286, <PLUS> line 745800.
Use of uninitialized value $bo_plus in string eq at ./parseOsc.pl line 287, <PLUS> line 745800.
</Error>

<code>
while(<PLUS>) {
     $the_plus = $_;
     chomp($the_plus);
 
     $item_plus = substr($the_plus, 0,10);
     $bo_plus   = substr($the_plus,36, 5);
     $res_plus  = substr($the_plus,41, 5);

   next if $item_plus =~ m/\s*MSC/i;
 
     $item_plus =~ s/\s+//;
     next if $item_plus eq "";
 
   #print " $item  >$item_plus< \t $bo_plus  \t $res_plus \n";
 
   $bo_plus  =~ s/\s+//; ### Error happens here !!!
   $res_plus =~ s/\s+//; ### Error happens here !!!


         $res_plus = ($res_plus eq "" ) ? '0' : $res_plus;
        $bo_plus = ($bo_plus eq "" ) ? '0' : $bo_plus;
 
        next if ( $item ne $item_plus);
0
I am working on a POC to read data from a DB using Logstash and create a JSON nested document and put it into elasticsearch. I am unable to create the JSON and was wondering using RUBY for the same however I am new to RUBY and need some help doing the same
The JSON I want created is
 { ParentId:1, ParentName:pName,
Child[
{
ChildId:1,
ChildName:cname1,
}

{
ChildId:2,
ChildName:cname2,
}


]
}


Any help in this regard will be appreciated. I need this urgently
0
I am trying to get a RoR application running on Ubuntu 15.10, the app runs on:
* Apache
* MySQL
* Ruby on Rails

Should I install Apache first, then CD to the Apache directory before installing rails? The reason I ask is there is one GEM that needs to be installed manually:
sudo gem install jquery-rails -v 3.1.4

Open in new window


I have just did a clean Ubuntu 15.10 and started installing Ruby, however I am thinking, should I have installed Apache first? Is there an order to installing RoR for Apache, where I need to be in the apache directories for GEM commands?

I am a Linux newbee, thanks in advance!
0
I am trying to install redmine (a ruby based bug tracker) on a goDaddy VPS running ubuntu 15.10. I got the app to install on my dev box using Ubuntu 16.04, however GoDaddy does not offer that as an option for VPS.

For the most part things are working and from what I gather, to get over the 500 error I am getting now, I need to run:
sudo RAILS_ENV=production bundle exec rake db:migrate

Open in new window


And here is where things become harder than the documentation. Now when I run the command I am given the output of:
W: `require 'RMagick'` is deprecated, please change to `require 'rmagick'`

Open in new window


This is where I am over my head for Linux. I am sure this is an easy fix, but I have no idea where to look. I swear I installed Ruby 2.3.3 before I rebooted, however when I run
ruby -v

Open in new window

I get
ruby 2.1.5p273 (2014-11-13) [x86_64-linux-gnu]

Open in new window

. When I run
sudo rails -v

Open in new window

, I get
Rails 4.1.10

Open in new window

.

Again, I just want to get this command to run:
sudo RAILS_ENV=production bundle exec rake db:migrate

Open in new window

, please help.
0
Rowby Goren Makes an Impact on Screen and Online
LVL 12
Rowby Goren Makes an Impact on Screen and Online

Learn about longtime user Rowby Goren and his great contributions to the site. We explore his method for posing questions that are likely to yield a solution, and take a look at how his career transformed from a Hollywood writer to a website entrepreneur.

I just spun up an Ubuntu 15.1 server on GoDaddy VPS.

I am trying to get a ruby web app working, when I enter command:
 ruby -v

Open in new window

I get  back: ruby 2.1.5p273 (2014-11-13) [x86_64-linux-gnu]

however, in my home directory I see a folder named ruby-2.4.0. Why is my Ubuntu server not using Ruby 2.4?
0
http://www.cchr.org

this website has a very organized layout

what language
or what content management system is used
0
Hello,

I have two versions of SASS installed.

SASS (3.4.22, 3.4.21)

Should I uninstall one of them, or leave as is?

If i should uninstall, what command shall I issue at the command line? I am running windows10.

Thanks
0
Hello,

I have installed the following gem:

https://rubygems.org/gems/autoprefixer-rails

The documentation states the following:

Ruby on Rails
Add the autoprefixer-rails gem to your Gemfile:
gem "autoprefixer-rails"

Clear your cache:
rake tmp:clear

I found a file named 'Gemfile', at the following location:
C:\Ruby22-x64\lib\ruby\gems\2.2.0\gems\autoprefixer-rails-6.5.4

I opened the file, which had the following line
eval_gemfile "#{ File.dirname(__FILE__) }/sprockets4.gemfile"

Open in new window

i added the line,
gem "autoprefixer-rails"

Open in new window

just underneath and saved

Is this what was needed?


About the cache instructions:

I issued the command rake tmp:clear, from the following two locations
C:\Devkit
C:\Ruby22-x64\lib\ruby\gems\2.2.0\gems\autoprefixer-rails-6.5.4

I received the error response

rake aborted!
No Rakefile found

Open in new window



Also, there are separate instructions for Ruby on rails, and separate instructions for Ruby. What is the difference?

Thanks for your help!
0
I am migrating an existing Ruby on Rails application.   I have setup a development environment in Ubuntu with Ruby 1.8.7 and Rails 2.3.12 and SQLite 2.8.17.

I would like to download the production source and install on the development computer.   What do I need to download and move?
0
I’ve been trying to find alternatives to using sleep for some time and it seems that every single suggested method to avoid using sleep never works and I’m at the end of my rope.

      it 'finds the correct product when searching by job type', js: true do
        fill_in('filterrific_for_work_type', with: 'Central')
        # once again, sleep feels like the only thing that works
        #sleep 1 # TODO: find a better way..
        expect(find('#work_queue_items_filter_reset')).to have_content('Reset All Filters')
        expect(page).to have_link('IP Central Report',
                                  href: work_queue_item_path(@release.id))
      end

Open in new window


I also have this wait for ajax helper:

module CapybaraHelpers
  def wait_for_ajax
    Timeout.timeout(Capybara.default_max_wait_time) do
      loop until finished_all_ajax_requests?
    end
  end

  def finished_all_ajax_requests?
    page.evaluate_script('jQuery.active').zero?
  end
end

Open in new window


And in spec_helper.rb:

RSpec.configure do |config|
config.include CapybaraHelpers, type: :feature
End

Open in new window


This test breaks unless I add the sleep 1.  and I’ve tried so many iterations using things like ‘within’ ‘find’, ‘have_content’ ect.  This is really driving me crazy.
0

Ruby

Ruby is an open-source dynamic object-oriented interpreted language that supports multiple programming frameworks including functional, object oriented and imperative. It also has a dynamic type system and automatic memory management. Ruby focuses on simplicity and productivity. Ruby's market share spiked due to Ruby on Rails, a model-view-controller (MVC) framework for building web applications.

Top Experts In
Ruby
<
Monthly
>