Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3195 connectés 

 


Pourquoi j'aime rails?




Attention si vous cliquez sur "voir les résultats" vous ne pourrez plus voter

 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  13  14  15  ..  26  27  28  29  30  31
Auteur Sujet :

[Rails] Blabla@rails

n°1841119
igarimasho
Posté le 21-01-2009 à 14:24:01  profilanswer
 

Reprise du message précédent :
Saleté de saleté. Attention à controller_name qui ne tient pas compte du namespace. Donc si tu vas à admin/products, controller_name te sort: "products". params[:controller] sort "admin/products" ce qui est amha plus juste.

mood
Publicité
Posté le 21-01-2009 à 14:24:01  profilanswer
 

n°1842572
igarimasho
Posté le 24-01-2009 à 19:09:53  profilanswer
 

Finalement le Markdown c'est trop limité, il y a parfois des cas où j'ai besoin de pouvoir créer de l'html plus poussé et là y'a rien à faire, il faut du Textile.  
 
Avec RedCloth 4.1 c'est super rapide à convertir, et la syntaxe est pas plus moche que Markdown. Je vais prochainement virer Markdown(rdiscount), d'ailleurs RedCloth ne l'intègre plus.

n°1842580
Shinuza
This is unexecpected
Posté le 24-01-2009 à 19:27:48  profilanswer
 

Tu peux utiliser html et markdown dans le meme document, meme si c'est pas le but du truc.


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1842603
igarimasho
Posté le 24-01-2009 à 20:08:29  profilanswer
 

La syntaxe est proche de Markdown et reste très simple, alors je vais juste garder Textile. Le truc qui me manquait c'est par exemple: p(#contact). pour générer <p id='contact'>
 
Et puis c'est sympa de pouvoir taper des tableaux facilement avec Textile.

n°1846027
igarimasho
Posté le 02-02-2009 à 12:26:31  profilanswer
 

Rails 2.3 RC1 est sortie: http://weblog.rubyonrails.org/2009 [...] -much-more, on est gâté avec des release notes très détaillés.


Message édité par igarimasho le 02-02-2009 à 13:15:46
n°1846719
igarimasho
Posté le 03-02-2009 à 17:38:21  profilanswer
 

J'abandonne les factories et autres conneries, les fixtures (surtout depuis la version 2) c'est pas si mal que ça pour tester les Model, au moins ça marche "as advertised" ce qui est loin d'être le cas des solutions de remplacement comme Machinist qui m'a fait perdre ma journée.
 
Vous utilisez quoi pour vos unit tests?
 
EDIT: hmm datasets a l'air intéressant, c'est "comme" les fixtures, sauf que les insertions en DB se font par AR au lieu d'un fichier yml, c'est donc plus lent, mais ça permet de forcer la validation. Le plugin dataset est en plus utilisé par RadiantCMS, c'est donc un très bon point en sa faveur.
 
EDIT2: c'est bidon dataset, ça shunte aussi les validations, je vois pas ce que ça apporte par rapport aux fixtures dans ce cas  [:urd]

Message cité 1 fois
Message édité par igarimasho le 03-02-2009 à 18:36:07
n°1846788
john8585
Posté le 03-02-2009 à 18:59:22  profilanswer
 

igarimasho a écrit :

J'abandonne les factories et autres conneries, les fixtures (surtout depuis la version 2) c'est pas si mal que ça pour tester les Model, au moins ça marche "as advertised" ce qui est loin d'être le cas des solutions de remplacement comme Machinist qui m'a fait perdre ma journée.
 
Vous utilisez quoi pour vos unit tests?


 
FactoryGirl me plait pas mal pour le moment, que reproche tu aux factories en général ?

n°1846792
igarimasho
Posté le 03-02-2009 à 19:09:07  profilanswer
 

Prenons machinist.
 
Je cré donc 3 objects dans ma DB et chaque object possède un attribut title. J'ai créé un custom find qui prend en argument title, et qui va me renvoyer tous les autres objects sauf celui qui a ce title, en gros c'est un find_not_by_title.
 
Ensuite je cré 1 exemple:

Code :
  1. it "should find other products" do
  2.     @products = Product.find_other_products('firefox')
  3.     @products.should == [ ??? ]
  4. end


Qu'est-ce que je mets à la place des points d'interrogations? Avec les fixtures je peux directement accéder aux objets insérés et donc faire par exemple:

Code :
  1. @products.should == [ products(:internet_explorer), products(:opera) ]


Avec Factory Girl c'est possible de faire ça? Avec machinist à vrai dire j'ai pas trouvé, la doc est inexistante  [:ciler]  Factory girl j'ai pas touché, j'aime pas la syntaxe, mais si je peux faire comme avec les fixtures alors j'adopte, c'est vrai que les fixtures c'est chiant à taper et ça bypasse quand même une partie du business logic.
 
Et pour Machinist, j'ai rien du tout compris comment je créé une séquence d'objet.

Message cité 1 fois
Message édité par igarimasho le 03-02-2009 à 19:13:05
n°1846806
john8585
Posté le 03-02-2009 à 19:34:14  profilanswer
 

igarimasho a écrit :

Prenons machinist.

 

Je cré donc 3 objects dans ma DB et chaque object possède un attribut title. J'ai créé un custom find qui prend en argument title, et qui va me renvoyer tous les autres objects sauf celui qui a ce title, en gros c'est un find_not_by_title.

 

Ensuite je cré 1 exemple:

Code :
  1. it "should find other products" do
  2.     @products = Product.find_other_products('firefox')
  3.     @products.should == [ ??? ]
  4. end


 

Je ne sais pas comment faire ca précisement mais ça me semble une mauvaise idée, à chaque nouveau produit ajouté ds les fixtures il faudra ré-écrire le test...

 
Code :
  1. it "should find other products" do
  2.     @products = Product.find_other_products('firefox')
  3.     @products.any?{|p| p.title == 'firefox'}.should == false
  4. end
 

me parait plus judicieux.

 

Après il y a peut être des cas ou tester le retour précis est intéressant mais dans ce cas la je le cadrerais en intégrant dans mon test :
- vidage de la table
- création des 3-4 objets a tester
- test

 

sans reposer sur une création a priori.

Message cité 1 fois
Message édité par john8585 le 03-02-2009 à 19:36:14
n°1846815
igarimasho
Posté le 03-02-2009 à 19:48:00  profilanswer
 

john8585 a écrit :


Code :
  1. it "should find other products" do
  2.     @products = Product.find_other_products('firefox')
  3.     @products.any?{|p| p.title == 'firefox'}.should == false
  4. end


 
me parait plus judicieux.  


Bien vu  :jap:

mood
Publicité
Posté le 03-02-2009 à 19:48:00  profilanswer
 

n°1848814
LeRiton
Posté le 09-02-2009 à 10:01:39  profilanswer
 

J'ai testé Phusion Passenger sur deux petites applis en Rails 2.2.2. Y'a pas à dire, c'est enfantin, c'est du mod_php en fait.
 
Petit soucis quand même dans le cas où l'appli en question n'est pas sur un vhost dédié (utilisation de RailsBaseURI) : le serveur se vautre comme une otarie dans l'interprétation des url. Si l'appli est dispo sur monsite.net/foo (et donc RailsBaseURI /foo), il faut ajouter dans environement.rb
 

Code :
  1. config.action_controller.relative_url_root = "/foo"


 
Info un peu tordue à trouver sur le net.

n°1850366
igarimasho
Posté le 12-02-2009 à 14:26:31  profilanswer
 

TextMate est passé en version 1.5.8

n°1854647
igarimasho
Posté le 24-02-2009 à 15:17:36  profilanswer
 

Question con: quelqu'un connaît le raccourci clavier TextMate pour que la première lettre d'un mot soit mise en majuscule? Parfois ça m'arrive de mal orthographier un Model.
 
Pour info, downcase c'est: ctrl+shift+u

n°1854687
Rioji
Posté le 24-02-2009 à 16:34:15  profilanswer
 

igarimasho a écrit :

Question con: quelqu'un connaît le raccourci clavier TextMate pour que la première lettre d'un mot soit mise en majuscule? Parfois ça m'arrive de mal orthographier un Model.
 
Pour info, downcase c'est: ctrl+shift+u


[:quardelitre]
ctrl + alt +u  
(Text > Convert > to Titlecase)

n°1854689
htaeD
Sic transit gloria mundi
Posté le 24-02-2009 à 16:37:09  profilanswer
 

Rioji a écrit :


[:quardelitre]
ctrl + alt +u  
(Text > Convert > to Titlecase)


RoR == caca

n°1854709
igarimasho
Posté le 24-02-2009 à 17:35:25  profilanswer
 

Rioji a écrit :


[:quardelitre]
ctrl + alt +u  
(Text > Convert > to Titlecase)


Non ça me converti toute la ligne en TitleCase. Je veux simplement convertir le mot sous lequel mon pointeur est, c'est comme ça que marche ctrl+shift+u . Ca n'existe peut-être pas par défaut?

n°1854721
Rioji
Posté le 24-02-2009 à 17:46:52  profilanswer
 

igarimasho a écrit :


Non ça me converti toute la ligne en TitleCase. Je veux simplement convertir le mot sous lequel mon pointeur est, c'est comme ça que marche ctrl+shift+u . Ca n'existe peut-être pas par défaut?


 
En effet, j'avais jamais remarqué qu'on pouvait le faire sans sélectionner du texte.
Par défaut ça n'a pas l'air d'exister mais tu peux bricoler ça via le bundle editor.
 
Edit :
http://hfr-rehost.net/preview/self/pic/66edd204419074144c1db9df39612c697f7cc407.png

Code :
  1. #!/usr/bin/env ruby -wKU
  2. print ENV['TM_CURRENT_WORD'].capitalize

[:doc petrus]


Message édité par Rioji le 24-02-2009 à 17:49:59
n°1855489
LeRiton
Posté le 26-02-2009 à 13:16:13  profilanswer
 

Sur les conseils d'Igarimasho, je précise qu'un topic de qualité (drôle, pertinent, avec des jeeps et des gonzesses à poil) est dispo ici.

n°1860100
igarimasho
Posté le 10-03-2009 à 22:55:29  profilanswer
 

Après avoir pas mal bossé avec Mercurial, j'ai eu besoin de me mettre sérieusement à Git pour merge des modifs que j'ai fais sur des plugins hébergés sur github et donc j'ai initialisé un repo git dans mon répertoire vendor/plugins. Et là je me suis rendu compte qu'en fait créer des branches dans hg c'était un peu chiant, car pour hg, par défaut la meilleure méthode pour créer une branche c'est de carrément cloner un nouveau repo.
 
Cloner un repo pour générer une branche de dév temporaire pour merger derrière, ça m'embete un peu car mon appli repose sur Nginx et la configuration basée sur des chemins de fichiers.
 
Quand je vois qui utilise git je me dis que ça doit etre cool aussi, mais bon basculer de scm c'est toujours un peu délicat, d'ailleurs il faut que je vois si je peux conserver dans git l'historique de mes commits.
 
Qui a un peu manipulé git? Vous en etes content ou pas? Vous aviez déjà bossé avec hg?

n°1860108
masklinn
í dag viðrar vel til loftárása
Posté le 10-03-2009 à 23:02:57  profilanswer
 

igarimasho a écrit :

Après avoir pas mal bossé avec Mercurial, j'ai eu besoin de me mettre sérieusement à Git pour merge des modifs que j'ai fais sur des plugins hébergés sur github et donc j'ai initialisé un repo git dans mon répertoire vendor/plugins. Et là je me suis rendu compte qu'en fait créer des branches dans hg c'était un peu chiant, car pour hg, par défaut la meilleure méthode pour créer une branche c'est de carrément cloner un nouveau repo.
 
Cloner un repo pour générer une branche de dév temporaire pour merger derrière, ça m'embete un peu car mon appli repose sur Nginx et la configuration basée sur des chemins de fichiers.
 
Quand je vois qui utilise git je me dis que ça doit etre cool aussi, mais bon basculer de scm c'est toujours un peu délicat, d'ailleurs il faut que je vois si je peux conserver dans git l'historique de mes commits.
 
Qui a un peu manipulé git? Vous en etes content ou pas? Vous aviez déjà bossé avec hg?


hg 1.1 a des bookmarks, équivalents aux branches (locales) git. Si tu bosses sur des projets perso tu peux aussi utiliser les branches hg, elles fonctionnent correctement [:spamafote]
 
J'aime pas git perso, son interface (CLI) est horrible comparé à celle de hg (sans parler de celle de Darcs).
 
Il y a des outils permettant de switcher un repo entre git, mercurial et bazaar (presque) sans pertes de données (pour autant que je le sache.


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1860181
igarimasho
Posté le 11-03-2009 à 10:20:35  profilanswer
 

Merci de ton avis :jap:
 
Cependant les branches mercurial s'inscrivent dans le long terme et représentent des branches de développement qui divergent. Alors que moi c'est plutôt pour travailler sur une nouvelle fonctionnalité qui sera ensuite mergée (ou pas) dans la branche master/default. Avec hg je peux créer une branche "development" générique, mais ça me plait moyen.
 
De toute façon j'ai git et hg installé, je vais bricoler avec git et je rendrai mon verdict plus tard.

n°1860183
masklinn
í dag viðrar vel til loftárása
Posté le 11-03-2009 à 10:28:36  profilanswer
 

igarimasho a écrit :

Cependant les branches mercurial s'inscrivent dans le long terme et représentent des branches de développement qui divergent.


Pas nécessairement [:spamafote]


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1860189
igarimasho
Posté le 11-03-2009 à 10:47:35  profilanswer
 

C'est pas ce que j'ai lu: http://markmail.org/message/r7oqgt [...] te:results
 
Ca a l'air un peu du bricolage pour supprimer une branche. Sinon il y a l'extension LocalBranch, mais les extensions je me méfie toujours un peu.

n°1860198
masklinn
í dag viðrar vel til loftárása
Posté le 11-03-2009 à 10:53:46  profilanswer
 

igarimasho a écrit :

C'est pas ce que j'ai lu: http://markmail.org/message/r7oqgt [...] te:results
 
Ca a l'air un peu du bricolage pour supprimer une branche.


Bah tu les supprimes pas, tu peux aussi les fermer (depuis 1.2)

igarimasho a écrit :

Sinon il y a l'extension LocalBranch, mais les extensions je me méfie toujours un peu.


bookmarks je t'ai dit :fou:


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1860239
igarimasho
Posté le 11-03-2009 à 11:35:13  profilanswer
 

J'ai jeté un oeil aux bookmarks, et ça a l'air d'être un bon ersatz aux branches de github.

n°1860249
masklinn
í dag viðrar vel til loftárása
Posté le 11-03-2009 à 11:49:40  profilanswer
 

igarimasho a écrit :

J'ai jeté un oeil aux bookmarks, et ça a l'air d'être un bon ersatz aux branches de github.


Tu lis les réponses des gens [:pingouino]
 
Non parce que dans ma première mention des bookmarks j'ai clairement dit que c'était équivalent aux branches locales git, pour une raison simple: ça a été créé spécialement pour ça [:pingouino]


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1862048
igarimasho
Posté le 16-03-2009 à 12:35:36  profilanswer
 

Rails 2.3.2 est dispo: sudo gem update && rake rails:update :)

n°1865127
igarimasho
Posté le 24-03-2009 à 10:21:34  profilanswer
 

Imaginons que j'ai 2 classes et qui ont une #method strictement identique. Donc en Ruby il suffit de mettre cette #method dans un module et d'include ce module dans les 2 classes, en 5 secondes c'est plié, propre, lisible, etc. Mais en Java, existe-t'il une solution aussi simple et élégante?

n°1865172
seabee
Posté le 24-03-2009 à 10:42:46  profilanswer
 

igarimasho a écrit :

Imaginons que j'ai 2 classes et qui ont une #method strictement identique. Donc en Ruby il suffit de mettre cette #method dans un module et d'include ce module dans les 2 classes, en 5 secondes c'est plié, propre, lisible, etc. Mais en Java, existe-t'il une solution aussi simple et élégante?


A part une méthode d'une super-classe commune, bein...
Sinon y'a pas des closures/functor en Java?


Message édité par seabee le 24-03-2009 à 10:43:18
n°1865462
igarimasho
Posté le 24-03-2009 à 19:16:05  profilanswer
 

Mouais pas cool java.
 
Et pour les spécialistes de git: est-il possible pour un fichier donné de lister les commits dans lequels il a été modifié, et si possible afficher les deltas? J'ai encore rien trouvé de mieux que par dichotomie et c'est un tout petit peu pénible.
 
EDIT: c'est dingue à chaque fois que je cherche un truc pendant des plombes et me résigne à poster sur h.fr, je tombe dessus dans la minute qui suit: git whatchanged, trouvé sur le cheat sheet de errtheblog. Mais ça ne montre pas les deltas peut-être qu'il y a une option?
 
EDIT: git whatchanged -p <filename>  [:petrus75]


Message édité par igarimasho le 24-03-2009 à 19:24:25
n°1867149
igarimasho
Posté le 29-03-2009 à 17:21:26  profilanswer
 

Je tente de tracer le chemin parcouru par une requête à l'intérieur du framework. Bon sang c'est pas évident! J'ai déjà été obligé de recommencer un paquet de fois tellement je m'y perds. A un moment y'a une série d'alias_method_chain  [:pingouino]  
 
Quelqu'un l'a déjà fait? On apprend un paquet de trucs et astuces en même temps.

Message cité 1 fois
Message édité par igarimasho le 29-03-2009 à 17:22:00
n°1867151
masklinn
í dag viðrar vel til loftárása
Posté le 29-03-2009 à 17:23:03  profilanswer
 

igarimasho a écrit :

Je tente de tracer le chemin parcouru par une requête à l'intérieur du framework. Bon sang c'est pas évident! J'ai déjà été obligé de recommencer un paquet de fois tellement je m'y perds. A un moment y'a
 
Quelqu'un l'a déjà fait? On apprend un paquet de trucs et astuces en même temps.


Faut utiliser un profiler pour extraire le graph de profiling :o


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1867155
igarimasho
Posté le 29-03-2009 à 17:39:57  profilanswer
 

Mouais je sais pas, y'a tellement d'appels de méthodes dans tous les sens ça risque d'être illisible. Il me semble l'avoir déjà tenté avec un bel échec en raison d'un graph gigantesque.
 
Déjà avec le debugger je saute pas mal d'étapes quand ça m'intéresse pas trop, genre le benchmarking et les flash c'est pas ultra essentiel.
 
T'as un bon outil à conseiller pour profiler comme je veux faire?
 
Sinon j'avais déjà tenter de tracer le chargement du framework à partir du moment où on tape 'script/server', mais j'ai laissé tombé :D et puis ça sert pas vraiment je pense.
 
EDIT: Ourah! Je suis arrivé à tracer jusque l'action du controlleur  :sol:


Message édité par igarimasho le 29-03-2009 à 17:50:52
n°1869275
boblenain2​00
Posté le 03-04-2009 à 15:24:35  profilanswer
 

drap

n°1869297
LeRiton
Posté le 03-04-2009 à 16:32:49  profilanswer
 

A titre d'info, j'ai pas fait de recherches poussées dans le domaine, mais il existe un moyen de partager une même application rails sous plusieurs domaines différents ?
 
Exemple : appli.com est la homepage, qui n'est pas statique pour autant. my.appli.com est la zone réservée aux membres loggés, blog.appli.com est le blog, etc.
Le tout géré par une seule application donc.
 
Et surtout, éventuels retours sur la méthode (si implé existante mais buggée par exemple).
 
Merci !

n°1869298
igarimasho
Posté le 03-04-2009 à 16:45:25  profilanswer
 

Fastoche! Tout se passe dans Nginx, il suffit de faire une URL rewrite, donc par exemple blog.appli.com => www.appli.com/blog, et là tu retombes sur les routes  d'une appli Rails, tout ce qu'il y a de plus classique.
 
Mais pourquoi préfères-tu blog.appli.com à www.appli.com/blog?

n°1869302
LeRiton
Posté le 03-04-2009 à 16:53:44  profilanswer
 

Forcément, j'avais pas pensé à l'URL rewriting.
 
Juste que je trouve ça plus user friendly. Je trouve vachement plus sympa pour un utilisateur de taper "my.application.com" et de retrouver son compte directement que de se rendre sur l'index et dérouler ensuite.
Tu vas me dire que les bookmarks, s'est pas pour les chiens, mais dans l'idée, ça coûte par grand chose.

n°1869325
masklinn
í dag viðrar vel til loftárása
Posté le 03-04-2009 à 17:33:59  profilanswer
 

igarimasho a écrit :

Mais pourquoi préfères-tu blog.appli.com à www.appli.com/blog?


C'est comme le port-salut, c'est marqué dessus :o


Message édité par masklinn le 03-04-2009 à 17:34:24

---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1869358
LeRiton
Posté le 03-04-2009 à 19:02:37  profilanswer
 

www's so 90' :o

n°1869659
Skateinmar​s
Posté le 05-04-2009 à 14:02:44  profilanswer
 

LeRiton a écrit :

A titre d'info, j'ai pas fait de recherches poussées dans le domaine, mais il existe un moyen de partager une même application rails sous plusieurs domaines différents ?
 
Exemple : appli.com est la homepage, qui n'est pas statique pour autant. my.appli.com est la zone réservée aux membres loggés, blog.appli.com est le blog, etc.
Le tout géré par une seule application donc.
 
Et surtout, éventuels retours sur la méthode (si implé existante mais buggée par exemple).
 
Merci !


http://github.com/mbleigh/subdomain-fu/tree/master


---------------
Feedback HAV
n°1872949
igarimasho
Posté le 14-04-2009 à 18:09:52  profilanswer
 

Vous êtes plutôt:
 
- RSpec
- Test::Unit
- autre?
- Chuck Norris n'a pas besoin de tester ses applis, alors je fais comme lui
 
Pour ma part c'était RSpec jusqu'à présent, mais je commence à me poser des questions.

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  13  14  15  ..  26  27  28  29  30  31

Aller à :
Ajouter une réponse
 

Sujets relatifs
[Ruby On Rails] [Resolu] Routing error[Ruby On Rails] Afficher un message d'erreur depuis un model
[HTML - CSS] Problème avec la balise <a>href="#">blabla</a>[regexp] Extraire deux chaines : "blabla"[espaces,tab]"blublu"
Ruby On Railsruby on rails
Arrivera-t-on a la page 10000 de blabla avant 2006?blabla 3
blabla 2PUTAIN HARKO TU AS FERM2 BLABLA !
Plus de sujets relatifs à : [Rails] Blabla@rails


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)