In Rails 4 deaktivieren Sie standardmäßig Starke Parameter

8

Gibt es sowieso eine Deaktivierung mit starken Params?

Und ich weiß, dass es eine Sicherheitslücke ist, aber ich brauche es wirklich nicht / will es nicht.

    
Mike Silvis 06.08.2013, 23:58
quelle

6 Antworten

4

Wenn Sie mit "Deaktivieren" meinen, dass Sie zu Rails 3-style attr_accessible -Zeilen zurückkehren, dann ja.

Verwenden Sie einfach das Attribut "protected_attributes" .

    
depa 07.08.2013, 00:38
quelle
39

Das Deaktivieren des Attributschutzes ist fast immer eine schlechte Idee.

Wenn diese verpflichtende Anmerkung nicht im Weg ist, können Sie sie wie folgt deaktivieren:

%Vor%

Platziere dies in config/application.rb

    
iain 11.09.2013 21:05
quelle
6

Ich stieß auf dieses Problem, wo ich versuchte, alle Parameter von einem Webhook von Stripe zu speichern.

Wenn Sie alle Parameter für eine einzelne Instanz zulassen möchten, können Sie #to_hash auf Ihrem params-Objekt aufrufen, bevor Sie es an Ihre initialize-Methode übergeben.

Beispiel:

%Vor%     
gabeodess 04.12.2014 21:12
quelle
2

Das glaube ich nicht.

DHH kommentiert hier bei dieser Pull-Anfrage, um einen Deaktivierungsschalter zu starken Parametern hinzuzufügen

  

All dies ist sowieso ein altes Problem, denn Rails 4.0 wird starke Parameter auf alle anwenden und Sie können es nicht ausschalten.

    
Althaf Hameez 07.08.2013 00:34
quelle
0

Um zu verhindern, dass die verbotenen Attribute für Ihre Anwendungen überprüft werden, können Sie den Haken entfernen.

zum Beispiel den folgenden Code in

einfügen

config / initializers / disable_strong_parameters.rb

%Vor%     
Clive 19.05.2016 12:46
quelle
-2

Natürlich können Sie! Gemäß den offiziellen Docs von Strong Parameters ( Ссылка ) können Sie deaktivieren, indem Sie unter config / application.rb folgende Codes hinzufügen:

%Vor%

Es funktioniert für mich in Schienen 3.2

    
albert yu 21.05.2014 07:37
quelle