10
votes

Référence de rubis non résolue en rubymine

Y a-t-il un moyen d'éviter l'avertissement "Référence de rubis non résolue" dans l'IDE de rubymine? Par exemple, lorsque certains code à mon avis appellent une méthode de l'aide de la vue, je reçois l'avertissement "Référence de rubis non résolue", même si le code fonctionne.

Le cas décrit ci-dessus n'est que l'un des nombreux. Un autre exemple est lorsque vous utilisez RSPEC: P>

  it "should require an email" do
    no_email_user = User.new(@attr.merge(:email => ""))
    no_email_user.should_not be_valid
  end


1 commentaires

Je viens d'installer Rubymine 3.1 pour Linux avec un style de click-> Click-> Terminer, le démarrait (réparé Java, comme indiqué), a créé un nouveau projet vide et il semble que l'inspection ne fonctionne pas du tout. J'ai eu une fois qu'un simple "met" Hello Worlds '"qui a déclenché une" référence de rubis non résolue ". Ensuite, j'ai créé une nouvelle méthode (cela n'a pas déclenché l'erreur) mais lorsque je voulais l'appeler, le nom de la méthode d'invocation a déclenché l'erreur. Sinon, les scripts fonctionnent bien.


3 Réponses :


2
votes

Je pense dans ce cas c'est difficile à résoudre. Ruby permet à une grande magie de se produire en utilisant Méthode_MISSING et aussi loin que je sache, le be_valid est également implémenté de cette manière. En réalité, il n'y a pas de be_valid mais il appelle le valide? méthode et attend de ce qu'il soit vrai.

Dans RSPEC, cela fonctionne pour toute méthode se terminant par un ? . Donc, si vous avez une méthode prêt? , vous pouvez écrire devrait être_ready .

Je suis un utilisateur de rubymine à temps plein, mais je ne sais pas comment ils pourraient résoudre cela et je ne l'attends pas non plus.


2 commentaires

Ok, je comprends, merci. Mais qu'en est-il des méthodes d'affichage des aides qui sont considérées comme une référence non résolue de la vue?


Ah, que je pense, c'est un bug de rubymine 3.1.1. Cela semblait travailler dans la version précédente et vous pouvez le trouver dans leur suivi de bug: Youtrack.JetBrains .NET / NUMÉRO / RUBY-7983 , qui est lié à youtrack.jetbrains.net / édition / ruby-7684 . Je suppose donc que ce sera corrigé bientôt.



10
votes

Ce numéro est déjà soumis à à la rubymine Bug Tracker, s'il vous plaît regarder / voter .


2 commentaires

... et toujours pas de solution.


Hey, c'est 2017 et devinez quoi? Impossible de trouver vos trucs qui fonctionne toujours ...



1
votes

Pour éteindre l'avertissement, vous obtenez à Rubymine 3.1, que je pense être votre question initiale, vous devez aller aux préférences de fichiers. Puis, à gauche, allez à "inspections". Ouvrez la section "Ruby" et décochez "Référence de rubis non résolue". Les préférences sont consultables, si vous obtenez d'autres personnes comme ça, vous pourriez essayer la recherche. Bonne chance!


1 commentaires

Je ne veux pas désactiver l'avertissement, car le problème réel n'est pas l'avertissement, mais le fait que l'appel de la méthode ne compte pas comme référence pour la rubymine (par exemple - il ne prend pas cette méthode appel en compte lorsque je Refactor / Renommer l'original Mehtod ...