je me demandais comment faire pour qu'au lieu d'être redirigé vers l'index, on se redirige vers le show lorsque le livre est créé (dans la première partie du cours ) ?
Bonjour, pour l'exercice mini-blog j'ai eu des des difficultées à noter le projet 8de579b4e304262969a6d2a826d84d239d4ddc58.zip le bundle install ne fonctionnant pas. Je n'ai pas pu ouvrir certains fichiers qui étaient corrompus. Si quelqu'un d'autre peux le noter ?
Après la création du formulaire, j'ai beau ajouter ce que je veux ça ne rajoute jamais rien dans la page, il n'y a toujours que les 3 livres originaux.
Après la création du formulaire, j'ai beau ajouter ce que je veux ça ne rajoute jamais rien dans la page, il n'y a toujours que les 3 livres originaux.
Il nous faudrait ton code pour trouver ton erreur.
class BooksController < ApplicationController
def index
@les_livres = Book.all
end
def create
Book.create title: params[:title]
redirect_to "/books"
end
end
La vue index.html.erb :
<% @les_livres.each do |un_livre| %>
<p><%= un_livre.title %></p>
<% end %>
<%= form_tag "/books", method: "post" do %>
<input type="text" name="title" />
<input type="submit" value="Ajouter le livre" />
<% end %>
Les routes :
Rails.application.routes.draw do
get 'books/index'
get 'books' => 'books#index'
post 'books' => 'books#index'
get 'pages/home'
end
Pourtant quand je vois ça, ça devrait fonctionner :
Started POST "/books" for 127.0.0.1 at 2016-02-17 15:38:39 +0100
Processing by BooksController#index as HTML
Parameters: {"utf8"=>"✓", "authenticity_token"=>"TgLJMVchOq/3yKT2cii82ywS6qNVH8xI9E4mMnuNeI/BK/5SXnRosM0+mKwDlxOEO3WtEg5zttU7Tx69YYJkKQ==", "title"=>"ahah"}
Book Load (0.2ms) SELECT "books".* FROM "books"
Rendered books/index.html.erb within layouts/application (1.3ms)
Completed 200 OK in 27ms (Views: 26.2ms | ActiveRecord: 0.2ms)
Problème résolu, c'était juste un soucis de route.
Problème suivant lors d'un rake db:migrate :
rake db:migrate
rake aborted!
Gem::LoadError: You have already activated rake 10.5.0, but your Gemfile requires rake 10.4.2. Prepending `bundle exec` to your command may solve this.
/home/condor666/Documents/RoR/initiation-rails-p2-master/config/boot.rb:3:in `<top (required)>'
/home/condor666/Documents/RoR/initiation-rails-p2-master/config/application.rb:1:in `<top (required)>'
/home/condor666/Documents/RoR/initiation-rails-p2-master/Rakefile:4:in `<top (required)>'
LoadError: cannot load such file -- bundler/setup
/home/condor666/Documents/RoR/initiation-rails-p2-master/config/boot.rb:3:in `<top (required)>'
/home/condor666/Documents/RoR/initiation-rails-p2-master/config/application.rb:1:in `<top (required)>'
/home/condor666/Documents/RoR/initiation-rails-p2-master/Rakefile:4:in `<top (required)>'
(See full trace by running task with --trace)
@condor666 : c'est la route post 'books' => 'books#index' qui devrait être remplacée par post 'books' => 'books#create'. Bon réflexe pour l'erreur, il suffit bien souvent de suivre les instructions, et sinon de rechercher sur Internet.
@condor666 : c'est la route post 'books' => 'books#index' qui devrait être remplacée par post 'books' => 'books#create'. Bon réflexe pour l'erreur, il suffit bien souvent de suivre les instructions, et sinon de rechercher sur Internet.
J'ai fini par le découvrir, maintenant j'attends que des personnes corrigent mes activités.
Au passage je me posais une autre question, la suite va t'elle rester longtemps dans le courselab ?
je rencontre un problème avec rails et javascript(jquery et ajax). Pour faire court, lorsque j'appelle la page qui contient du Js, il me fait 2 fois l'appel. Je ne comprend pas comment résoudre cela. J'ai regarder sur pas mal de forum avec diverses solutions mais aucunes ne fonctionnent pour moi. Je ne comprend pas du tout d'ou cela peut provenir. Est-ce coffescript qui me génère du mauvais code js? Cela ce fait sur la page gallery. Mon code source se trouve sur : Lien Github
@kameleon836 : De ce que je vois tu as un fichier .js et un .coffee dans tes assets le js étant surement le coffee que tu as transpilés ?! Hors rails se charge du passage coffee -> js du coup tu dois avoir deux js, un que tu as transpilé et l'autre généré automatiquement par rails à partir du coffeescript.
ok, j'essaierai de m'y coller dès que j'ai un peu de temps vu qu'en ce moment j'étudie php, qui pour l'instant est vraiment moins au niveau de la gestion du mvc(peut-être qu'avec les frameworks ça sera un peu mieux...)
Le timestamp fonctionne comme une colonne normale de la base de donnée. Voici ma migration pour créer ma table User avec timestamp :
class CreateUsers < ActiveRecord::Migration
def change
create_table :users do |t|
t.string :username
t.string :password
t.string :role
t.timestamps null: false
end
end
end
Pour les Regex je ne sais pas encore les utiliser en rails... desolé
Oui, désolée et merci pour ta réponse... Pour plus de précision, je parviens à faire apparaître le formulaire sur chaque page, mais je ne parviens pas à faire apparaitre son contenu une fois saisi... sachant que j'ai recommencé l'exercice pas mal de fois, donc "l'auteur" de chaque article ne sera pas présent non plus... je le rajouterai dès que je parviendrai à réaliser le reste...
Donc la View Show :
le controller pages
les routes
et pour finir la création du tableComments
Pour ce qui est des modèles au début j'avais saisi des "has_man/belongs_to" pour lier les "comments" aux "articles", mais je n'étais pas non plus parvenus à faire fonctionner donc j'ai laisser tomber....
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
In vino Veritas, in Aqua Sanitas
Semper Improvidus
In vino Veritas, in Aqua Sanitas
In vino Veritas, in Aqua Sanitas
Architecte logiciel - Software craftsmanship convaincu.
In vino Veritas, in Aqua Sanitas
lesjoiesducode / Les points-virgules en JavaScript
In vino Veritas, in Aqua Sanitas
Semper Improvidus
In vino Veritas, in Aqua Sanitas
Semper Improvidus
Semper Improvidus
Semper Improvidus
Semper Improvidus
Semper Improvidus