ActiveScaffold rails 5.2 example (jquery stuff not working)

83 views
Skip to first unread message

mvargo

unread,
Feb 9, 2020, 8:37:56 PM2/9/20
to ActiveScaffold : Ruby on Rails Gem
Does anybody have a simple sample rails 5.2 app with active_scaffold that I could look at?

TL;DR

I have a project I've been working on for years using rails 3.2.21 using activescaffold.  Trying to upgrade the whole thing to rails 5.2

Created a new blank rails 5.2 project.  Added activescaffold gem.  Followed directions on Getting Started.

gem 'active_scaffold' in Gemfile

add *= require active_scaffold in application

add 

//= require active_scaffold    to application.js.  

generated a model using rails g active_scaffold

All works great.  I can go to localhost:3000/dorks (the model was named Dork).  I see the scaffold list!  great.  When I click on the create new I see the ajax call to the server complete using Inspect in the browser.  The form stuff is in there.  It's just like the ajax call is not updating the DOM.

Not sure how to diagnose.  I'm sure this is just something wrong with my assets or something.  

Application.js:

//= require jquery
//= require rails-ujs
//= require active_scaffold
//= require activestorage
//= require turbolinks
//= require_tree .


Application.css:

/*
*
*= require_tree .
*= require_self
*= require active_scaffold
*/

Gemfile:

git_source(:github) { |repo| "https://github.com/#{repo}.git" }

ruby '2.5.1'

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '~> 5.2.0'
# Use mysql as the database for Active Record
gem 'mysql2', '>= 0.4.4', '< 0.6.0'
# Use Puma as the app server
gem 'puma', '~> 3.11'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# See https://github.com/rails/execjs#readme for more supported runtimes
# gem 'mini_racer', platforms: :ruby

# Use CoffeeScript for .coffee assets and views
gem 'coffee-rails', '~> 4.2'
# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
gem 'turbolinks', '~> 5'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.5'
# Use Redis adapter to run Action Cable in production
# gem 'redis', '~> 4.0'
# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'

# Use ActiveStorage variant
# gem 'mini_magick', '~> 4.8'

# Use Capistrano for deployment
# gem 'capistrano-rails', group: :development

# Reduces boot times through caching; required in config/boot.rb
gem 'bootsnap', '>= 1.1.0', require: false

gem 'active_scaffold'
gem 'jquery-rails'

group :development, :test do
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
end

group :development do
# Access an interactive console on exception pages or by calling 'console' anywhere in the code.
gem 'web-console', '>= 3.3.0'
gem 'listen', '>= 3.0.5', '< 3.2'
# Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
gem 'spring'
gem 'spring-watcher-listen', '~> 2.0.0'
end

group :test do
# Adds support for Capybara system testing and selenium driver
gem 'capybara', '>= 2.15', '< 4.0'
gem 'selenium-webdriver'
# Easy installation and use of chromedriver to run system tests with Chrome
gem 'chromedriver-helper'
end

# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]

Screenshot from 2020-02-09 17-34-44.png

Sergio Cambra

unread,
Feb 10, 2020, 5:06:31 AM2/10/20
to ActiveScaffold : Ruby on Rails Gem

Can you try with master branch, or 3.6.0.pre? Support for rails 5.2 were added to ActiveScaffold 3.6 which is not released yet (but I think it's pretty close), although older versions had requirement for rails >= 4.0.5 only, when issue with rails 5.2 was reported requirement was changed to >= 4.0.5 and < 5.2, so you got latest 3.5.x without rails < 5.2 requirement.

 

3.6.0.pre has a fix for rails 5.2, and a fix when rails-ujs is used instead of jquery-ujs. You could try changing rails-ujs with jquery-ujs if you don't want to update to 3.6 version, although I would recommend to update to master branch, which has fixes and improvements over 3.6.0.pre and it's stable and pretty close to release. 3.6.0 should work with rails-ujs.

 

Regards

--
You received this message because you are subscribed to the Google Groups "ActiveScaffold : Ruby on Rails Gem" group.
To unsubscribe from this group and stop receiving emails from it, send an email to activescaffol...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/activescaffold/6523f3a3-f5cf-4510-9def-bceb401923b9%40googlegroups.com.



mvargo

unread,
Feb 10, 2020, 2:20:14 PM2/10/20
to ActiveScaffold : Ruby on Rails Gem
I followed Sergio's advice.  I got it to work with Rails 5.2.  I put my sample app up on github if that helps anybody.


Mike

BTW:  I did try 3.6.0.pre but I got an error when trying to load the page.  master branch works.

BBTW:  I have noticed with all the versions I've tried that if you try to run rails test you get errors in the test file generated by the scaffold on the create and update tests.  I'm not sure if this is some kind of issue with the default model or what.
```
Error:
ArticlesControllerTest#test_should_update_article:
NoMethodError: undefined method `each_with_object' for nil:NilClass
    test/controllers/articles_controller_test.rb:37:in `block in <class:ArticlesControllerTest>'
```

(I wish we could have markdown everywhere.  :(
Reply all
Reply to author
Forward
0 new messages