Activity
Just a thought, but do you have to white-list your pdocution domain with them anywhere?
Hey Spohnz,
Assuming you have an appliance controller, you might want to add @client in appliance_controller.rb
under the index or show methods. e.g.
class ApplianceController < ApplicationController
def index
@appliance = Appliance.all
@client = Client.all
end
end
But I'm also just learning too, and whilst the above works, someone else might have another suggestion.
Posted in Logic on nested forms/related tables
Hey Robert.
Thanks for the response. I've ended up just going with a triple nested form:
class Roast < ApplicationRecord
has_many :countries
end
class Country < ApplicationRecord
belongs_to :roast
has_many :regions
end
class Region < ApplicationRecord
belongs_to :country
end
This does allow me to show the countries and their regions (up to 3 times) for any given roast. Hopefully this gives me a better foundation for adding more sophistication to the Roast model as I move forwards.
Posted in Error with the Scheduled Posts Episode
Thanks James.
Unfortunately no change with the above addition of .present
.
Posted in Error with the Scheduled Posts Episode
Hey James,
Checked that, and the migration has definately run.
Simons-MBP:gcl Simon$ rails g migration AddPublishedatToArticles published_at:datetime
Running via Spring preloader in process 22081
invoke active_record
create db/migrate/20180203182358_add_publishedat_to_articles.rb
Simons-MBP:gcl Simon$ rails db:migrate
== 20180203182358 AddPublishedatToArticles: migrating =========================
-- add_column(:articles, :published_at, :datetime)
-> 0.0175s
== 20180203182358 AddPublishedatToArticles: migrated (0.0176s) ================
Posted in Error with the Scheduled Posts Episode
I've jsut been going through the https://gorails.com/episodes/scheduling-posts episode, but have ran into the issue of undefined method 'published_at?'
in my helper, when I try to load the new form page. Did anyone else run into this? My helper is as below, my model is called articles
and not posts
module ArticlesHelper
def status_for(article)
if article.published_at?
if article.published_at > Time.zone.now
"Scheduled"
else
"Published"
end
else
"Draft"
end
end
end
Posted in Scheduling Posts Discussion
I've gone through this, but when trying to load the form. I get `undefined method `published_at?' for nil:NilClass`.
My helper to my eye, looks word for word as per the example: (my model is article, not post)
module ArticlesHelper
def status_for(article)
if article.published_at?
if article.published_at > Time.zone.now
"Scheduled"
else
"Published"
end
else
"Draft"
end
end
end
Posted in Logic on nested forms/related tables
I'm trying to improve my modles for an existing scenario, but I just can't get my head around it. The situation is that I want to list a range of coffee's and include the country and region of the beans. A coffee could be made from a single roast, but it could also be a blend of two or more.
At the moment I have just one model roasts
that simply has fields for country1
region1
, country2
region2
etc. Although, I'm led to believe it would be better to have a seperate model for countries
. However, 1) would I add region field to the country model, or 2) would I have another model for regions - With country has_many :regions, and region belongs_to :country?
Absolutely Andrew. Here's what I have. An update from the above, is that I now have the 'distillery' field showing in the new form, but when I submit the form, i get the error:
Distillery must exist
views/gins/_form.html.erb
<%= form_for(@gin, local: true, multipart: true) do |form| %>
//some fields removed
<div class="input-field">
<%= form.fields_for :distillery do |distillery_form| %>
<p>
<%= distillery_form.label :distillery %>
<%= distillery_form.text_field :name %>
</p>
<% end %>
</div>
//some fields removed
models/gins.rb
class Gin < ApplicationRecord
belongs_to :distillery
models/distilleries/distillery.rb
class Distillery < ApplicationRecord
has_many :gins
accepts_nested_attributes_for :gins
controllers/gin_controlller.rb
def gin_params
params.require(:gin).permit(:name, :text, :pic, :slug, distillery_attributes: [:id, :name])
end
I have two models, Gins and Distillery. At the moment, these are two completely seperate models, but I have been thinking that as a user adds a a new Gin and inputs it's distillery, this could also create a new entry in the Distillary table. Obviously Gin would then belong_to distillery
and Distillery would has_many Gins
. Looking around it seems a nested form could be the solution, but would that actually add the distillery value into both forms/tables. I haven't actually been able to get this to work, as the Distillary field in thh Gins form, wouldn't render
I'm going round in circles trying to work out, what I think must be a fairly common scenario, of tyring to render a rails resource through a React front end component.
I'm seem to have got as far as understanding I need to be able to pass down my resources as a props
from my controller. I have the code below attempting to do that.
class RoastsController < ApplicationController
def index
@roasts = Roast.all
render component: 'RoastsJson', props: {roasts: @roasts}
end
I then understand I need a React component that can receive this props, and they render it in my view.
I have the follow code attempting to do that:
import React from 'react'
import ReactDom from 'react-dom'
class RoastsJson extends React.Component {
constructor(props) {
super(props);
this.state = {
error: null,
isLoaded: false,
roasts: []
};
}
componentDidMount() {
fetch("roasts.json")
//.then(res => res.json())
.then(
(result) => {
this.setState({
isLoaded: true,
items: result.roasts
});
},
// Note: it's important to handle errors here
// instead of a catch() block so that we don't swallow
// exceptions from actual bugs in components.
(error) => {
this.setState({
isLoaded: true,
error
});
}
)
}
render() {
let roasts = []
this.props.roasts.map((roast) => {
roasts.push(
<tr key={roast.id}>
<td>{roast.name}</td>
</tr>
)
});
return (
<div>
<h1>Roasts</h1>
<div id="roasts">
<table>
<thead>
<tr>
<th>Name</th>
</tr>
</thead>
<tbody>
{roasts}
</tbody>
</table>
</div>
</div>
);
}
};
export default RoastsJson
However, I'm just not getting this to work out. Am I fundamentally missing something? I'm under this impression that this scenario is a fairly common and typical use case but I'm struggeling to find any articles that succinctly explain how to go about it.
Thanks Jack. I will have a watch of that.
Hello.
I have a RoR 5.1 app, with an existing form that allows users to add a post to my app. However I want them to be able to include an image as an attachment. I'd like to save the image to S3, and I'm thinking of using React to do this. Can anyone point me in the direction of a good tutorial? I'm very new to React.
Turned out it was actually a Heroku issue. I just needed to add a node buildback.
Thanks Chris.
I've been able to open my profile $ open .profile
from the terminal, and now have the following:
PATH="/Applications/Postgres.app/Contents/Versions/latest/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:$PATH"
(No idea how that Postgres got there.)
However, the main issue I was trying to solve is still persisting. When trying to upload my app to heroku, it fails due to Webpacker requires Node.js >= 6.0.0 and you are using 0.10.30
I've got a fresh install of node.js and I have no problems running my app locally.
Should I be updating the $PATH somewhere else?
I've got into bit of a mess. Posted this over on SO too, but no answers of use over there.
I've added Webpacked so I can install React.js. However, I think I've somehow buggered up my PATH and bash profile and I can't seem to resolve it.
Simons-MBP:~ Simon$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
-bash: curl: command not found
Simons-MBP:~ Simon$ open .profile
-bash: open: command not found
Completely lost at this stage.
Just front end really Abdul. Basically looking to have the user be able to filter the results without the page reloading.
Happy New Year!
Just wondering if anyone had thoughts on this.
Posted in What are your goals for 2018?
Yes I guess it is that time of year for making list!
I'm new to the GoRails community so will use this as a way to start getting involved.
- Continue to develop my site gourmetcoffee.london. In particular finish the coffee roasts user rating and library.
- Build a blog site for my mate Steve to write about his love for gin!
- Start learning some Data Science techniques and practices.
- And write more!
Happy New Year!