私は、名前、生年月日、星座、出生状態の 4 つのフィールドをクエリできるクエリ インターフェイスを持っています。ユーザーは、これらのフィールドのいずれかに値を指定できます。私は AngularJS (ここでは重要ではありません) と YiiFramework (素材) を使用しています。
これに似た質問への回答を見たことがありますが、ほとんどの場合、クエリ文字列パラメーターを使用することになります。urlManager でそれを説明できますが、「正しい」RESTful な方法でこれを行うことをお勧めします。これを行う方法を示す例を次のように見ました。
/myservice/index.php/names/jones?birthyears=&signs=leo&birthstates=maine - 誕生年が提供されていないことを意味します
空白の値をスキップするパスでこれを完全に行うという私の考え。これは合理的なアプローチですか?
/myservice/index.php/api/modelname/names/jones/birthyears//signs/leo/birthstates/maine
もしそうなら、私はurlManagerパターンに苦労しています
array('api/find', 'pattern'=>'api/<モデル:\w+>/names/<names:(|\w+)>/birthyears/<birthyears:(|\d{4})>/ signs/<signs:(|\w+)>/birthstates/<birthstates:(|\w+)>', '動詞'=>'GET')
上記のパスをこれに渡すと、期待される解像度が得られません。これに対処するより良い方法があると確信しています